Jump to content

The dreaded rigidbodies


halion

Recommended Posts

Last night I decided to try out some rigidbodies. So I started reading through the help file and thought it won't be that hard. I was wrong. <_< Anyways right now I have a scene with just a sphere and a pop network that has a rigidbody create pop and a force pop. The force pop points to a force obj. Now when I'm in the pop network the sphere falls but when I go upto obj level nothing happens. Is there something else I need to add to get it work or what? Also after I get this working I want to do something with constraints ofcourse. So do I need to create a force obj for that aswell?

Link to comment
Share on other sites

Ok I figured out how to create my rigidbodies and push them around with forces. Now I'm trying to figure out the constraints but can't seem to get them to do anything. I can get some of it to work if I use the force obj instead of the rdbconstraint pop and don't understand why. I hope one of you guys understands how to use these things because I can see me yelling at my monitor for the rest of the night. :lol:

Link to comment
Share on other sites

Thanks for the replies guys. I just got that bowling ball scene file and its pretty much like the last scene I set up but one thing I don't understand is the one expression centroid("/o/"+opname(".")+"/om1",D_X). I know its getting the information for the object merge sop but why is it written like that instead of something like ("/obj/geo2/om1",D_X)?

starkhorn thanks for the link to the 3dbuzz thread. Thats actually what helped me understand the basics of rdb. My main problem now is the constraints. I can get them to work if I use the force obj but not with the constraint pop. Then comes the problem of triggering the events to happen. I wish there was some kind of spring attribute where you can tighten and loosen it to make the constraints react like in maya.

Anyways I'll trial and error all day and hopefully come up with something.

Link to comment
Share on other sites

centroid("/o/"+opname(".")+"/om1",D_X)

does evaluate to

centroid("/obj/geo2/om1",D_X)

The "/o/" + opname(".") + "/om1" expression does string addition that results in:

/o/geo2/om1

Inside of an expression, just build your string using "" around the typed parts and expressions for other parts with + inbetween. Very nice and much better than using nested strcat() expressions.

The opname(".") expression simply returns the name of whatever node is entered. "." means "here" which in this case is geo2 so geo2 is returned. This allows you to cut and paset geo2 any number of times and the expression will evaluate properly to the new node's name. This is invaluable inside of Digital Assets where local evaluation is very important.

-jeff

Link to comment
Share on other sites

And to make the answer complete, /o is actually an operator alias for /obj for backwards compatibility with PRISMS(!). But I guess hardcore users still use /o day in and day out. I'll leave it as an exercise for the reader to figure out what the other hardcoded opaliases are for the names of the nodes under /. :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...