Jump to content
Sign in to follow this  
Valent

multiple Transform sops

Recommended Posts

I got really confused with multiple transform sops. I hate to ask such simplistic question, but the fact that I can't make it work means that I don't understand some fundamental concepts of Houdini. If I use them one after another, I thought that the second one would inherit transforms of the first one.

in the example(Houdini 17 non-commercial) the first transform is animated and the second one is static(non-animated) but it is parented to the first one, so I expect it to follow the fist one, I mean the center of the second one should always be at the center of the first one, but it is true only if scale of the second one is set to 1.

translate_scale_origin_q.hipnc

Share this post


Link to post
Share on other sites

ok, I guess I have found an answer, well sort of.. I have to make a reference of transform values of the previous transform nodes and put them as pivot transforms of the follow-up transform node. And, if the chain of these transforms is long, then the reference could look like: ch("../transform1/tx")+ch("../transform2/tx")+ch("../transform3/tx") ... +ch("../transform100/tx")

is there a simpler way to do it?

translate_scale_origin_a.hipnc

Share this post


Link to post
Share on other sites

well it's just like in maya with the transform groups or w/e that is called. (have a cube, ctrl+G to group and tranform that group, ctrl+G again and so on) you will see the pivot is also not in the center of the object anymore.
And it's good that way.

If you need the pivot in the center again after a transform, either use your expression or since you asked for a simpler way, put $CEX, $CEY, $CEZ in the corresponding fields instead of your expression

  • Like 1

Share this post


Link to post
Share on other sites

Thanks, it works!


Also, could you please explain why (and how) the scale (of the last transform node) could affect position of that node (object)?

I'd say, because in Houdini one transform-node inheriting transformations from an up-stream node, I expected it to be more like "parenting" objects in maya.

Share this post


Link to post
Share on other sites

If the pivot you scale from is not in the center of the object ($CEX,$CEY,$CEZ) then of course scaling affects the "position" (I guess by position you mean center as scaling always affects the position of points, no matter where the pivot is).
They don't inherit anything. They all work in their own local space and have no idea what happened before. If you put the $variables in there, all you do is to change the origin of their local space.

Parenting in Houdini is done on Scene level, not Object level, but generally behaves just the same

Edited by 3dome
  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×