[ODE] Car Simulation(Lots of problems)

Chris Ledwith cledwith at d-a-s.com
Wed Aug 11 20:05:00 MST 2004


> I'll try to explain the explode problem more detailed
>
> if i have a car and an object:
>
> velocity         wall
> -------->         |
>  ______           |
> |______|          |
>                 |
> ------------------------------
>
> velocity         wall, but i litte deformation
> -------->            |
>  ______              |
> |______|          |--
>                 |
> ------------------------------
>
> any idea?


My understanding of this problem is that instability can arise in
collision resolution due to regions of trimeshes that have normals
pointing in widely different directions (i.e. high local curvature). In
the picture above, the normal of the horizontal part points straight up,
and the vertical part points straight to the left. If the box collides
with the edge in-between, it will momentarily interpenetrate triangles on
both the horizontal and vertical parts. Because the normals point in
greatly different directions, collision is not resolved well. The normals
"fight" each other, and the box will move around wildly.

Try this test: make 3 or 4 cylinders (modeled as trimeshes) of different
radii, and drive your car into each one. You'll find that the cylinders
that have radii smaller than the length of the side of the car will give
you big problems, whereas the cylinders of larger radius behave fine. This
is due to the higher degree of curvature in the cylinders of smaller
radii; the normals of the triangles oppose each other more greatly.

Hope that makes sense...I've run up against this problem again and again.
I'm surprised there's not more discussion about it. The way to deal with
it is to use simpler trimesh representations for objects that could
potentially collide with boxes and such.

-Chris



More information about the ODE mailing list