View Full Version : Rigid Body Dynamics
Does someone have good links explaining rigid body dynamics? The less cryptic the explanations the better.
I just implemented OBB intersection detection, and now I'm looking to understand how I can implement collision reaction *with rotation*.
I think I heard someone say you could treat each vertex of the OBB as a point particle linked to the others, but I don't know any more than this.
rouncer
12-25-2008, 11:48 PM
this idea is completely crazy, but you could use springs attached to points, perform the collisions on the points (points are easy) then the springs should activate to keep the shape together right.
Well I obviously don't need/want collision detection on points. That wouldn't be reliable. I will, however, need some kind of contact determination mechanism... And for that I'm thinking of just picking the closest vertex as an easy approximation.
Kenneth Gorking
12-26-2008, 09:07 AM
There is always the classic from Baraff (http://www.cs.cmu.edu/afs/cs/user/baraff/www/pbm/rigid2.pdf)
Kenneth Gorking
12-26-2008, 09:24 AM
By the way, you can actually use point-based collisions. Not only can it be unconditionally stable, but it makes it very easy to simulate soft-body objects and tearing/fracturing: http://cg.informatik.uni-freiburg.de/publications/deformationShapeMatchingSIGGRAPH05.pdf
There is always the classic from Baraff (http://www.cs.cmu.edu/afs/cs/user/baraff/www/pbm/rigid2.pdf)
Lots of equations, scary :blink:
Do you understand what is being explained in this paper?
By the way, you can actually use point-based collisions. Not only can it be unconditionally stable, but it makes it very easy to simulate soft-body objects and tearing/fracturing: http://cg.informatik.uni-freiburg.de/publications/deformationShapeMatchingSIGGRAPH05.pdf
Do you think this would require more implementation effort than a system based on bounding volumes?
Kenneth Gorking
12-29-2008, 04:47 AM
Lots of equations, scary :blink:
Do you understand what is being explained in this paper?
Collision response and preventing inter-penetrations, I think. I must admit, I never studied it to much, I just used some of the code once. Like you said, lots of equations :)
Do you think this would require more implementation effort than a system based on bounding volumes?
Hard to say really, I guess it depends on what kind of collision detection you need. The standard rigid body solution might be easier, because of all the code already on the net, but it would be limited to solid objects.
On the other hand, doing a point-based goal-oriented implementation should not prove difficult at all, and it has the nice side-effect of allowing soft bodies.
On the other hand, doing a point-based goal-oriented implementation should not prove difficult at all, and it has the nice side-effect of allowing soft bodies.
Well, I read the paper quickly, and unfortunately it only addresses part of the collision response, from what I could see. They don't really talk about how they implemented their collision detection (ie: how do they detect when points should stop moving to prevent inter-penetration between the point clouds).
PlayStationX
01-12-2009, 06:41 PM
do i understand correctly:
- you are asking how momentum is transferred during elastic/inelastic collision, more precisely - how angular momentum is transferred/conserved, right?
i think that would have to do with:
1.) centers of mass of colliding objects
2.) distances from mass centre to collision points
3.) translation velocity vectors of colliding objects
4.) angular velocity vectors of colliding objects
quick copy/paste from Wiki:
Angular momentum
http://en.wikipedia.org/wiki/Angular_momentum
Conservation of Angular Momentum
http://www.lightandmatter.com/html_books/2cl/ch05/ch05.html
Angular Momentum in a Collision Process
http://www.hakenberg.de/diffgeo/collision_resolution.htm
this idea is completely crazy, but you could use springs attached to points, perform the collisions on the points (points are easy) then the springs should activate to keep the shape together right.
That will work. In fact that is how the physics was done in the first hitman game.
http://www.teknikus.dk/tj/gdc2001.htm
When I was interested in physics, I read Hecker's series for the basics, and the "Nonconvex Rigid Bodies with Stacking" paper for more advanced stuff. It required a lot of thinking, but I managed to create a very acceptable simulation.
Phlex
01-14-2009, 05:44 AM
There's a whole bunch of stuff on collision detection here
http://www.pfirth.co.uk/
mmakrzem
02-04-2009, 11:51 AM
This is where I go when I need help with physics:
http://www.digitalrune.com/KnowledgeBase/RigidBodyDynamics/PhysicsEnginesList/tabid/476/language/en-US/lang/en-US/default.aspx
vBulletin, Copyright ©2000-2010, Jelsoft Enterprises Ltd.