Ragdoll tutorial

UltimeAlex

21-08-2010 16:13:51

Hi all,


I would a physics engine for my game and to choose the good one i am searching for a ragdoll tutorial for all four solutions.
I have tried to search for it, but after some hour, found only dead links...
So i call the OgreNewt community to help me :)


Thank you.

kallaspriit

22-08-2010 09:52:44

You can build ragdolls using the built-in joints and if there is some joint missing, you can always use custom joints for extra functionality.

iverlam

24-08-2010 16:32:01

:D Hello,

I am looking for the ragdoll solution as well; however, you can find that the SVN version of Ogrenewt has removed the demo of ragdoll
and the BallAndSocket class is not implemented well . so i would suggest building the ragdoll using Newton directly and they have a good demo there.

For the PhysX, they do not have a good warpper for ragdoll as well ...

maybe ragdoll does not draw the community attention ? :shock:

majc

24-08-2010 20:29:24

Here is the old ragdoll example i hope it helps.
I don't know if they release a newer version of it but i think this is better than nothing :P
I only uploaded the code, not the media because we can only upload 256kb sorry.
But i let here the link to the model in an upload website:

http://www.2shared.com/file/KtOQ4Glo/zombie_model.html

UltimeAlex

05-09-2010 11:58:12

thx for the demo majc, i had tried to make it compatible with last OgreNewt 2 but i need help.


demo08_ragdollexample\ragdoll.h(49) : error C3083: 'BasicJoints' : le symbole situé à gauche de '::' doit être un type
demo08_ragdollexample\ragdoll.cpp(82) : error C2039: 'setCustomTransformCallback' : n'est pas membre de 'OgreNewt::Body'
demo08_ragdollexample\ragdoll.cpp(98) : error C3083: 'BasicJoints' : le symbole situé à gauche de '::' doit être un type
demo08_ragdollexample\ragdoll.cpp(101) : error C2039: 'getUserData' : n'est pas membre de 'OgreNewt::Hinge'
demo08_ragdollexample\ragdoll.cpp(112) : error C2039: 'calculateStopAlpha' : n'est pas membre de 'OgreNewt::Hinge'
demo08_ragdollexample\ragdoll.cpp(113) : error C2039: 'setCallbackAccel' : n'est pas membre de 'OgreNewt::Hinge'
demo08_ragdollexample\ragdoll.cpp(118) : error C2039: 'calculateStopAlpha' : n'est pas membre de 'OgreNewt::Hinge'
demo08_ragdollexample\ragdoll.cpp(119) : error C2039: 'setCallbackAccel' : n'est pas membre de 'OgreNewt::Hinge'
demo08_ragdollexample\ragdoll.cpp(401) : error C3083: 'BasicJoints' : le symbole situé à gauche de '::' doit être un type
demo08_ragdollexample\ragdoll.cpp(401) : error C2661: 'OgreNewt::BallAndSocket::BallAndSocket' : aucune fonction surchargée ne nécessite 4 arguments
demo08_ragdollexample\ragdoll.cpp(402) : error C3083: 'BasicJoints' : le symbole situé à gauche de '::' doit être un type
demo08_ragdollexample\ragdoll.cpp(402) : error C2039: 'setLimits' : n'est pas membre de 'OgreNewt::BallAndSocket'
demo08_ragdollexample\ragdoll.cpp(406) : error C3083: 'BasicJoints' : le symbole situé à gauche de '::' doit être un type
demo08_ragdollexample\ragdoll.cpp(406) : error C2661: 'OgreNewt::Hinge::Hinge' : aucune fonction surchargée ne nécessite 5 arguments
demo08_ragdollexample\ragdoll.cpp(407) : error C3083: 'BasicJoints' : le symbole situé à gauche de '::' doit être un type
demo08_ragdollexample\ragdoll.cpp(407) : error C2039: 'setCallback' : n'est pas membre de 'OgreNewt::Hinge'
demo08_ragdollexample\ragdoll.cpp(409) : error C2039: 'setUserData' : n'est pas membre de 'OgreNewt::Joint'


I think some errors are easy to correct like OgreNewt::BasicJoints::Hinge => OgreNewt::Hinge ?

It is difficult to begin when the example is too outdated :oops:

majc

07-09-2010 20:03:14

Yes try to see what functions were replaced.
I didn't compile it with Ogre 1.7.1 i think.