I'm trying to engineer a physics model similar to a Newton's Cradle (those click-clack office toys) as if the anchor for every ball were in a cocentric point, and gravity was not an applicable force. I want to use the rigidbodies, colliders, and joints... the notion is that all of the balls would be stationary around this center point, and you could apply a force or torque to one of the balls and it would begin colliding with other balls in the spherical 'cloud' of balls -- all of which are constrained by its rigid, yet freely rotating tether to the anchor.
I've tried a few simulations, but I don't think I fully understand how to set up configurable joint and keep it firmly anchored... I'm having a hard time understanding, through documentation, how joints, rigidbodies, and colliders interact.
Some guidance on setting this up and explanation of how the various components will interact and constrain each other would be really great!
asked Nov 16 '09 at 09:25 AM
It sounds like you want all the balls to be attached (via a pivot point) to the World and not to each other.
For each of the balls, you can do this:
You can use a Configurable Joint and in leave the Connected Body variable empty. This connects this Rigidbody with the world.
Set the Anchor to be a point relative to the ball itself, which should be the pivot. For example, if you have a ball at <0,-10,0> that you want to rotate around the origin <0,0,0>, then you need to specify the Anchor as <0,10,0>.
Now, set the XMotion, YMotion, and ZMotion to Locked. Leave the Angular XMotion, Angular YMotion, and Angular ZMotion set to Free.
You can disable gravity in the Rigidbody component.
The above seems to work for me.
answered Nov 16 '09 at 04:52 PM