how make ctrl morph with simple conditional branch?

kitakoredazkitakoredaz Posts: 3,526

Can I make ctrl morph with conditional branch?

eg, I made pose by rotation of 2 nodes as I like.

node A set 50, nodeB set -10,

then make pose controller, Erc Freeze , name it as CtrlAsIlike
set min (-1) to max (1), create,,

Now I get new controller, ctrlAsIlike(value)
if I check it,,

ctrlAsIlike(1)>> the nodeA= 50, nodeB = -10.
it must be.

then ctrlAsIlike(0)>> the nodeA = 0, nodeB = 0
it should be,, if it can not turn zero, the zero figure,zero pose may not work correctly, I think,,,

then,,
I am embarassed, when I set ctrl value to -1.

if there is no rimits of two node, default, it will be, nodeA = -50 .node B= 10 I think,,

but if nodeA and nodeB has rimits,
value 0 to 1, both of nodes keep the step value,
then turnd zero, both of nodes must be turn zero.

value 0 to -1
if one node reach rimits, keep the rimits. and wait other node reach the limits,
then the value will stop on the rimits, if I am moving controller to -1.

I can understand it maybe right movements, it seems keep step value untill reach limits.
then stop. if I change nodeA rimits and nodeB rimits, they will move keeping the step value
of each node.

then I think if I can change CtrlAsIlike(-1) only?

when value 0 to 1, it keep original pose move.
so CtrlAsIlike(1), nodeA = 50, node B= -10.

but when I set CtrlAsIlike(-1) , I want to pose change,
nodeA= -20, nodeB= 5 .

if there is good way to make it on ds 4.5 , or ds script?

if it can do it, I think more complicate conditional branch controller may make
but I need not them yet, hope branch about plus value or minus value
of one controller,,,
(eg if I can set two morph face in one controller,,devil and engel,,
in this case, need another two morph,,and each of morph only work when plus or minus )

Comments

  • wowiewowie Posts: 2,029
    edited December 1969

    If I understand correctly, you want to create a morph that's controlled by two controllers? And the morph will only be enabled when both of them are active?

    ERC by default don't allow conditional branches, but there is a workaround.

    You have two controls (x and y) and a morph.

    Make another control/dial for x, let's call it z, set the default value to 1.

    Link z to x, so that when x is fully enabled (for example 1), then the value of z is 0.

    Once that's done, link both z and y to the morph. Don't forget to reset the value of z to 1. Properly linked, the morph will only be enabled when both x and y is enabled.

  • kitakoredazkitakoredaz Posts: 3,526
    edited September 2012

    wuu,,, I think it is alike,, but it seems different,, waht I want.

    now think most simplecase,,

    I want to make one controller which can controll other one moprhs
    on both side (plus and minus) waht I want.

    the ctroller name P , target moprh is babyX

    if I slide ctrl P , the target morph (or node) value change. it is usuall,

    then I slide P to 1 , babyX morph change 0.5
    but if I slide P to -1 baby X morph change maybe -0.5
    if baby X has min limits, eg(0) babyX morph will stop the limits (0)
    even if I slide the controllerP to minu, babyX never change.

    so I want to decide freely when I slide P to -1, how the babyX change.

    then I think if I make two morphs (babyX, babyY)

    but I can not exchange the target eg (o to 1, I controll babyX),
    (0 to -1 controll baby Y)

    I think you gave me big hint,, it maybe near what I think,,
    yes,, I thought apply different limits with two morph,,
    but,, how exchange the targets,,

    I read documents about MCM it only active when other morph value is in decided scope,,
    it is ok If I think the opositte pattern? @@,,

    ==============================

    now I think and simplyfy more easycase,,,
    if it can do, I may do it,,,about pose controll (though I need three ctrl or morph,,)

    I made two character morph. ugly evil and cute engel
    then they have limits evil (0 to 1) , engel (0 to1)

    so I feel if I make one ctrl, which can change genesis shape both character.
    CtrlDobleShape,,
    if I slide CtrlDobleShape (to 1), gradually genesis change cute angel,,
    then if I slide CtrlDobleShape (to -1) gradually genesis change ugly evil,,

    so how can do it :coolcheese:

    Post edited by kitakoredaz on
  • wowiewowie Posts: 2,029
    edited September 2012

    Found this a long time ago, hope it will help.

    http://www.atlantis23.com/erc_download.html

    At the very least, it should provide more details to help you.

    But I think you're on the right track. For a controller with both negative and positive limits (-1 and 1), I use two helpers dials/controls. For example, for -1, I created a control/dial called down/back and vice versa (for 1, I created a dial called up/forward). Works pretty good for gettting around Euler restrictions on limb rotations.

    Edited to clarify.

    Post edited by wowie on
  • kitakoredazkitakoredaz Posts: 3,526
    edited December 1969

    I try to read!! thank you much.:)

    (when I first touched ds 4 I thought I need to lern more about basic principal of files,,
    becaues I could not understand the means of "morph targets",, I understand a few days ago
    the difference of light shader and skin shader ^^; it was so big step for me,,
    I did not notice I applied default shader to figure skin everytime.)

    I serched documents about poser files before,, but any of them lost linked,, so thank you! almost perffect manual
    about cr2 files! )

    and ,,if you can do it by just simple (so it may tidy,,) steps again and again on ds 4.5 erc and save,
    tell me later please ^^

  • wowiewowie Posts: 2,029
    edited December 1969

    No problem, glad to help out.

    As for writing the code, I generally try to avoid manually writing them to avoid typo/mistakes.

    If you're using DS, be it DS3 or DS4, the Property Editor tab, allows you to link properties via ERC more easily. It doesn't allow you to make illegal ERCs (for example, a circular loop) and you can see the changes directly in the viewport when you change the deltaop values or the controller values.

Sign In or Register to comment.