[ODE] ODE with non-penetration constraint

Jon Watte (ODE) hplus-ode at mindcontrol.org
Thu Jul 12 09:31:14 MST 2007

Hard contacts probably mean something else than what you belive it to 
mean. I don't quite understand what it means, myself -- it adds a 
constraint to move the object out of the collision, but it's not an 
inviolable constraint. Gravity will pull the object into collision again 
before the next time you collide, in effect making the contact work as a 
spring (which, in turn, is one reason why a variable time step is a bad 

ODE is a penetration based solver; you should expect objects to always 
penetrate their resting surface a little bit, else there would be no 
contact, and no "resting."


          / h+

Huang Rubby wrote:
> Hi All,
> on ODE manual, it says, "ODE has /hard/ contacts. This means that a 
> special non-penetration constraint is used whenever two bodies collide."
> But in my simulation example, which basicly was a ball rolling on 
> ground, somehow, I read out the contact point position and found the Z 
> - direction (vertical)
> coordinates were -0.005. Which means the contact point was 
> underground. How did it happened? Since ODE has Hard contacts for each 
> collision.
> Any way to avoid such penetration? Thanks.

More information about the ODE mailing list