[ODE] Improvement suggestions?

Nate W coding at natew.com
Fri Aug 30 17:32:02 2002


On Fri, 30 Aug 2002, Jetro Lauha wrote:

> [...] when the guy falls down on the lower steps on his head, the head
> is is moved left to end of the stair for a small time which I guess is
> just because ODE is pushing the head away from being inside the stair,
> but is unable to push the whole body accordingly so the result is that
> only the head is pushed far away from the body for a moment.
> 
> Is there anything which I could do to prevent this kind of behavior?

I can't say for sure, but I do have a guess... perhaps (if it penetrates
too deeply?) the resulting contact force normal is sideways, when what you
really want is for the normal to be vertical.  

You could try examining the contact.geom.normal vectors and do something -
printf, or cause a breakpoint, whatever, if they're more sideways than
vertical.  The right thing to do would probably be to compute a
penetration depth for a vertical contact normal, and then generate a new
contact joint.  

> If I increase the size of the environment effectively increasing number of
> static but collidable objects in the scene, does it increase the complexity
> much or is most of the cpu usage in the handling of the guy with all his
> joints and so on?

I *think* you'll be OK.  Adding more static objects won't (I think) slow
down the dynamics.  It will probably slow down collision detection, but
not by much.  But that's only my intuition talking. :-)

-- 

Nate Waddoups
Redmond WA USA
http://www.natew.com