[ODE] My project explodes in latest cvs ode

Benny Benny <benny at kramekweb.com>
Sat Dec 7 09:54:02 2002


I've been developing a game for a long time with ode, using an old cvs
version from september. I finished the game, and tried compiling it with the
latest ode cvs, but I am having major problems. It compiles fine, but when I
run it, my bodies explode immediatly.

I've narrowed the problem down to the collision detection and contact joint
creation. I don't know why there is a problem. I don't use ode spaces. I'm
doing something very simple. I create a few geometries(box, plane, sphere
and geometry transform), and every frame manually call dCollide on every
pair. Also, for some pairs, I don't even call dCollide, but manually create
contact joints.
Everything worked fine in the old ode cvs from september

Something wierd I've noticed is that, when I comment out most of the
collision detection, execpt a few cases that work, sometimes when one geom
collides with a different geom, a third body totally unrelated jerks as if
being collided with. I think this may have something to do with accessing
values in arrays out of bounds.

Is there any chance that there is a bug in ode's dCollide() function? Maybe
it's touching parts of the *contact struct that it shouldn't? (Like if it
detects 3 contact points but i give it a flags parameter of 1)

I know that you probably can't help me with so little information but maybe
you can tell me where to look?

ps: if anyone is interested, you can play a working beta of the game for
windows:
http://benny.kramekweb.com/machineball.exe

Thanks,
Benny Kramek