[ODE] Some objects pass through other objects

Jon Watte (ODE) hplus-ode at mindcontrol.org
Sun Nov 13 14:11:16 MST 2005


My observation is that, when you find yourself using a fixed joint, you 
have not simplified the problem sufficiently (this is akin to finding 
the normal form of a database). I'm not sure whether this is the cause 
of your actual bug, but it's something you'll want to work on.

If the Trebuchet doesn't move (only the catapult pin does), then I would 
model this case as a trimesh (or some collection of box geoms) for the 
frame, a single box geom and body for the moving pin, and a hinge joint 
between the catapult pin and the NULL static world.

If the Trebuchet actually moves, then attach the various geoms (using 
dGeomTransforms) and the joint to a single body, which represents the 
frame. If you need a "pouch" for the ball to sit in, then model the 
pouch as a trimesh geom, and attach this to the catapult pin body (that 
also has a box geom for the actual pin).

Btw: one reason why things may fall through a trimesh geom would be if 
you pass in the number of triangles when you're creating the trimesh; 
you're supposed to pass in the number of indices. Another reason for 
problems is if you dispose your index or vertex array after building the 
trimesh; they're used by the trimesh collider during each collision, and 
it's your responsibility to keep them alive.

Cheers,

			/ h+



Keith Wiley wrote:

> I'm looking at the code right now trying to find the bug, but I'm  brand 
> new to ODE and it's taking me a while to decipher the path of  execution.




More information about the ODE mailing list