[ODE] Speed of ODE's constraint method
Nate W
coding at natew.com
Fri Oct 25 17:10:02 2002
On Fri, 25 Oct 2002, Jason Gott wrote:
> I need to implement a physics simulation that can
> handle rag-doll type constraints (hinge, ball, but
> probably none powered) with joint limits, and contact
> with friction. I need a fast method. Is the LCP /
> Lagrange multiplier method used in ODE fast enough for
> interactive frame rates (> 30 fps) for a minimal
> number of constraints/contacts?
I just did some experiments with a rag doll consisting of 10 bodies, and 9
joints - all bodies are boxes, and I use ball joints for the shoulders,
hips, and neck, and hinges for the knees and elbows. I have a 1.7ghz K7
and a GeForce 3.
It's like Porrasturvat, but without the stairs, just a simple ground
plane. With one doll, I get ~38 frames per second. With two dolls, 25-28
fps. With three, 19-20 fps. With four dolls (team dismount!), about 15
fps.
Changing the bodies to flat-ended cylinders brought the four-doll
simulation down to 11 fps. Changing them to capped cylinders, 6-9 fps.
Bear in mind that there's some overhead in my tests due to the fact that
they're conducted in a general purpose ODE playground rather than in an
optimized game. I have no idea how much overhead there is, though. I
don't think it's very significant, but if anyone can do a similar test I'd
be really interested in the results.
--
Nate Waddoups
Redmond WA USA
http://www.natew.com