Jump to content
Vicarious_one

RBD rotation constraint

Recommended Posts

I'm looking to create an effect where an object (for the sake of simplicity, lets say is just a box), can be affected by rbd objects, but only rotationally, and the center position of this box remains locked at a single point position. You can kinda imagine if the object is suspended in a gravity field where it's center of gravity doesn't move, but it's able to rotate freely and be influenced by other objects. The only sources I could find that deal with constraints like this either involve multiple object strung together, or some kind of spring constraint. I just want the object to rotate around it's center point when influenced by another rbd object, without changing it's center point position.

Any help would be greatly appreciated.

Thanks!

Share this post


Link to post
Share on other sites

Thanks alot Yigit! This is just about exactly what I was trying to do.

Now, I have a part 2 to this project. If I wanted to have the locked object slowly rotate back to it's initial position after being struck, how might I set that up?

 

Share this post


Link to post
Share on other sites

This is perfect! Exactly what I was looking for. Thanks so much.

If I could make one final request about the most recent file shared(the one in the last post). Would you be able to explain what exactly is happening in the setup? At least the important parts like how the pivot is set up and how the constraints work. I would really like to know the breakdown of how this works so I could more easily recreate the effect in the future

Thanks!

 

Share this post


Link to post
Share on other sites

Hi Eric,

I think this page is a great introduction to the wild and wonderful world of constraint geometry:

https://www.sidefx.com/docs/houdini/nodes/dop/constraintnetwork.html

In the scene above the constraint primitive (a simple two point poly) is manually placed at the centroid of the packed box. One point of the primitive references the name of the packed piece, the second point references nothing. By referencing nothing that point becomes a world space anchor - the other named point is bound positionally to that anchor and becomes the de facto pivot of the packed object. That's all there is really. You can, of course, offset the constraint geometry which effectively offsets the pivot of the packed object. See scene below (the scene also contains an alternate way to handle rotation back to rest via dual constraints rather than manipulating angular velocity).

 

clipping2.gif.gif

rotate_back_to_rest_rbd_offsetpivot.hipnc

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

×