Vertical position of a falling Rigid Body Object....

   7616   13   3
User Avatar
Member
56 posts
Joined: Dec. 2009
Offline
Hi all!

How do I get the vertical position in space of a falling rigid body object? For some reason the “translate x” position doesn't update if an object is a rigid body. Help anyone?

Thanks!

Lacy, gently, wafting curtains.
http://www.youtube.com/watch?v=NN3eBvZvUXk [youtube.com]
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
Houdini's y up so I'd be looking at the dop object's Position/Options t sub-data.

You will have to add the p pivot channel to the t to get the world space position of your RBD object.
There's at least one school like the old school!
User Avatar
Member
56 posts
Joined: Dec. 2009
Offline
Got any idea what node I can find that in? Or would I need to create a new node for that?

(Attached is a simple falling object.)

Attachments:
fallingBox.hipnc (168.9 KB)


Lacy, gently, wafting curtains.
http://www.youtube.com/watch?v=NN3eBvZvUXk [youtube.com]
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
DOPs doesn't update the actual object's translate parameter. It's the DOP Import SOP that fetches the simulation results from the DOP network and applies it directly to the geometry.

There are several ways to get at the actual animation values for the RBD object in the simulation.

1) You can use the Dynamics CHOP to fetch the simulation results. Follow the Dynamics CHOP with a Delete CHOP to isolate the *:t?, *=p? and *:r? or translate, rotate and pivot channels.

2) You can fetch the channels directly with the dopfield() expression like this:
dopfield(“/obj/AutoDopNetwork”, “box_object1”, “Position”, “Options”, 0, “tx”)
dopfield(“/obj/AutoDopNetwork”, “box_object1”, “Position”, “Options”, 0, “ty”)
dopfield(“/obj/AutoDopNetwork”, “box_object1”, “Position”, “Options”, 0, “tz”)
There's at least one school like the old school!
User Avatar
Member
512 posts
Joined: July 2009
Offline
Hey Jeff could you be so kind and post a simple example of that?
I never really dealt with chops, so I have no clue

thanks,

Manuel
http://vimeo.com/user2522760 [vimeo.com]
http://stormbornvfx.com/ [stormbornvfx.com]
Manuel Tausch
User Avatar
Member
56 posts
Joined: Dec. 2009
Offline
Yes, pls. Can you provide an example, Jeff? Thanks!

Lacy, gently, wafting curtains.
http://www.youtube.com/watch?v=NN3eBvZvUXk [youtube.com]
User Avatar
Member
696 posts
Joined: March 2009
Offline
here it is. There's quite some material on chops at SESI's website.

Cheers

Attachments:
dynamic_into_chop.hipnc (202.5 KB)

Toronto - ON
My Houdini playground [renderfarm.tumblr.com]
“As technology advances, the rendering time remains constant.”
User Avatar
Member
56 posts
Joined: Dec. 2009
Offline
^Awesomeness! Thanks Rafaels!

Lacy, gently, wafting curtains.
http://www.youtube.com/watch?v=NN3eBvZvUXk [youtube.com]
User Avatar
Member
512 posts
Joined: July 2009
Offline
that's really useful, thanks for the file man!!

cheers!
http://vimeo.com/user2522760 [vimeo.com]
http://stormbornvfx.com/ [stormbornvfx.com]
Manuel Tausch
User Avatar
Member
56 posts
Joined: Dec. 2009
Offline
Follow up question: What if you have 2 falling objects? Would you need to create another chopnetwork? It seems that only a single “export” node can be activated at any given time inside a chopnetwork.

Any ideas?

Lacy, gently, wafting curtains.
http://www.youtube.com/watch?v=NN3eBvZvUXk [youtube.com]
User Avatar
Member
696 posts
Joined: March 2009
Offline
You can import and export multiple channels at once but if you're exporting to, say, the translateY of another geo it won't be of much help, since as I understand only the first channel would be used.
Another way of doing things would be either using the channel SOP, or the chop() expression function.
Toronto - ON
My Houdini playground [renderfarm.tumblr.com]
“As technology advances, the rendering time remains constant.”
User Avatar
Member
512 posts
Joined: July 2009
Offline
well you could go back to use the dopfield expression, work in a SOP Solver and stamp your $OBJID variables in order to treat objects seperately !!!!
http://vimeo.com/user2522760 [vimeo.com]
http://stormbornvfx.com/ [stormbornvfx.com]
Manuel Tausch
User Avatar
Member
56 posts
Joined: Dec. 2009
Offline
asnowcappedromance
well you could go back to use the dopfield expression, work in a SOP Solver and stamp your $OBJID variables in order to treat objects seperately !!!!

Can you make a simple HIP file example of that? (pls?)

Lacy, gently, wafting curtains.
http://www.youtube.com/watch?v=NN3eBvZvUXk [youtube.com]
User Avatar
Member
512 posts
Joined: July 2009
Offline
actually, you don't really need a SOP Solver in this case, in order not to make it too complicated, here's an example using the foreach node to access the position coordinates in world space.
check it out!

Manu

Attachments:
fallingbox_dopfield.hipnc (198.3 KB)

http://vimeo.com/user2522760 [vimeo.com]
http://stormbornvfx.com/ [stormbornvfx.com]
Manuel Tausch
  • Quick Links