Jump to content
  • Advertisement
Sign in to follow this  
agreatjedi

Implementing Ragdoll Physics

This topic is 5365 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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.

Share this post


Link to post
Share on other sites
Advertisement
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]

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
NovodeX is probably the most complete engine you can get your hands on. Stuff like convex hull collision isn't even in engines like ODE, but is in NovodeX, and very robust.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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 :-)

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!