[ODE] ragdoll and muscle's

Jaap Stolk jwstolk at gmail.com
Tue Nov 7 09:27:42 MST 2006

On 11/7/06, Krystian Ligenza <kxxl at poczta.onet.pl> wrote:
> > I did sone experiments with spring like muscles:
> > http://jwstolk.xs4all.nl/wisse/main4.c
> > It's not done using ODE. my program reads the angle position of all
> > joints, then computes a muscle torqe using the spring formula (and
> > dampening) and then sets tis torqe in ODE, then runs the next ODE
> > simulation step.
> look ok, thanks for sharing.
> I see that you use universla with hinge joint. Have you got any problems
> with this solution? As for now I have been using univesal only, but I need
> to change it. Did you tried to use ball with AMotor joint to apply limits?

I never got around to finishing it, but I'm still intending to some day.

I started using ball joints as it seamed like the most logical
solution. they worked ok, but it turned out to be impossible to read
the angular velocities, etc. so I couldn't get it to work with the
springs I wanted. The simple solution is to use a universal joint with
a separate hinge joint to control the rotation. to make sure there was
some mass between the joints I put the rotation joint half way the
body parts. This is actually very realistic, because if you twist a
body part, most of the muscles (mass) on one side do not twist much at

my program doesn't have any graphical output. instead it writes a file
with the matrix rotations of each object. this file is then read into
povray and rendered using ray-tracing and radiosity. the povray file
is also on my site, together with all of the mpg animations. (
http://jwstolk.xs4all.nl/wisse/ )

I want to use the spring system to drive the man as well. each spring
has a position, stiffness and dampening. normally you would start with
a low stiffness, then change the position, and then increase the
stiffness to make the joints actually move. I use the springs
mentioned at the bottom of this page:


I think the video's on the cog site show that a system using this
spring like control can move in a relatively smooth way, even if the
actual control is very basic. it also gives you automatic interaction
with the environment.


More information about the ODE mailing list