Skip to main content
GameDev.net gamedev.net
🔒 Locked

Implementing Ragdoll Physics

Started by agreatjedi Jan 10, 2005 at 10:30 PM 10 replies 12.4k views
Original Post
agreatjedi
agreatjedi
I'm planning on designing a game that relies heavily on ragdoll physics. It will probably be the most complicated aspect of the game. Is writing a game engine with such capabilities too much for one programmer to handle in a timely manner? I'm no programmer; I'm just trying to gather as much information as possible before getting in too deep. Thank you.
bit64
bit64
If you are interested in getting the game done, rather than learning all of the complexities involved with implementing such a system, then I would suggest using one of the free physics engines that support ragdoll physics.

tokamak
ODE
Newton Physics Engine
Novodex (free but not for commercial use I think)

I've just recently delved into these engines and I like Tokamak.

[Edited by - bit64 on January 10, 2005 11:34:57 PM]
Don't be afraid to be yourself. Nobody else ever will be.
roos
roos
I agree with the above poster...

Personally I'm using NovodeX for my current project (free for noncommercial use as he said), and so far I'm very happy with it. Haven't tried the other ones so I can't really compare
d000hg
d000hg
I agree about using 3rd party libs. It's hard to make a good ragdoll even using these, unless they provide ragdoll functionality, so doing the physics for it too is a big job - lots of constraints.
Koshmaar
Koshmaar
I have very similiar question: I'm planning to develop game that will have physics system just like Gish (don't know it? shame on you! http://www.chroniclogic.com/index.htm?gish.htm), but I have no real experience in programming physics in games (though I'm rather advanced ;-) coder). I'm curious: do I have any real chances to make good, stable 2D physics system in reasonable amount of time (ie. 2 months), or am I too optimistic about it? Also, I don't want to use any physics library, I'm doing it for learning purposes.
Gorax
Gorax
Ragdoll physics isn't that hard to implement in ODE, providing you have all of the body sizes and joint positions, etc. as well as the ranges of the joints. If you really wanted to take it one step further (as I did), you can even add a maximum distance for one body part to be from another before the joint connecting them 'snaps'.

Between roughly designing it, and actually implementing it, and setting all of the joint data, etc., it only took me ~8-12 hours, and that's with a lof of TV in between. If you have all of the body sizes and joint positions (from models), all you'd need is the maximum joint ranges. From there it's just a matter of putting the corpse on a fixed object with all of the pieces in place. Shouldn't be too hard, nor that time consuming. The only real problem then is the collision detection, which can take a little longer to do, especially if you plan on dumping bodies in water, etc.
oliii
oliii
Quote:
Original post by Koshmaar
I have very similiar question: I'm planning to develop game that will have physics system just like Gish (don't know it? shame on you! http://www.chroniclogic.com/index.htm?gish.htm), but I have no real experience in programming physics in games (though I'm rather advanced ;-) coder). I'm curious: do I have any real chances to make good, stable 2D physics system in reasonable amount of time (ie. 2 months), or am I too optimistic about it? Also, I don't want to use any physics library, I'm doing it for learning purposes.


the gish physics is pretty cool, but I think feasable. At least in a reasonalbe time frame.

you can have a quick look at this (hope the link works)

http://uk.geocities.com/olivier_rebellion/rigid.zip
http://uk.geocities.com/olivier_rebellion/wh1.zip


it's based on the verlet stuff described by Jakobsen. Nothing groundbraking, but you can do soft bodies and rigid bodies very simply with this technique. Not much bagage need, only basic vector maths.
Everything is better with Metal.
Koshmaar
Koshmaar
Yahoo:
Quote:

Sorry, this site is temporarily unavailable!


I followed the links and got that ^^^. Does this "temporarily" mean that I should check later? ;-) If not, and you have those files on your hard drive and they aren't very big, could you please send them on my mail: koshmaar at poczta.onet.pl? I would be thankfull :-)

Quote:

the gish physics is pretty cool, but I think feasable. At least in a reasonalbe time frame.


That's good... you made me happy :-)

Quote:

it's based on the verlet stuff described by Jakobsen. Nothing groundbraking, but you can do soft bodies and rigid bodies very simply with this technique. Not much bagage need, only basic vector maths.


I was planning to base my physics system on this paper:

http://www.gamasutra.com/resource_guide/20030121/jacobson_01.shtml

It also uses Verlet integration etc. and author had described it pretty damn good; though I would also be glad if I could take a look at yours.

BTW: does Jakobsen you mention is Thomas Jakobsen, the one who written this Gamasutra tutorial? then it would be silly coincidence :-)
oliii
oliii
same guy. What I've got basically follows his paper.

http://uk.geocities.com/olivier_rebellion/rigid.zip
http://uk.geocities.com/olivier_rebellion/wh1.zip

if you have a problem with geocities kicking you out, visite my webshite first (link in my signature).



there

||||||
vvvvvv
Everything is better with Metal.
ShmeeBegek
ShmeeBegek

I recently was in the same position for one of my projects (2d game similar to Soldat). I found that the making of a decent ragdoll simulation was much simpler than I had imagined using only spring simulation, and I don't even have to pay anyone royalties / a big liscensing fee :). Since I was a total beginner I wrote it with Euler integration too... and even with that had no problems.

I got a stable ragdoll simulation working in 2 days, although lacking constraints (because it is 2d ragdoll). I'm sure that one could get a nice 3d ragdoll effect going in under a week (with constraints).

I suggest this page to get started http://www.gaffer.org/articles/Springs.html, hope that that helps, ~SPH

AIM ME: aGaBoOgAmOnGeR

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.