[ODE] I´m totally unhappy with ODE ... Please Help me

Pierrre-Laurent CHAMBERT pilo.c at wanadoo.fr
Fri Dec 15 15:51:02 MST 2006

Hi Artur!

Maybe the problems simply comes from the main loop order :
you do collision detecion, and then draw the scene without handling 
collision points. So this way it's possible that some objects are 
colliding, and drawn like that.

what you should do is :

collision detecion
handle it (with IA as far as I understand)
and then draw the scene.

(or just swap collision detection and rendering in your current loop).
I think this should remove your troubles.


arturapps a écrit :
> Hi people: 
> I´m working on a game that doesn´t need Real time physics  but needs
> Trimesh-Trimesh colision Detection . 
> The game is a kind  of spaceship race that takes place on a  quite large
> enviromment composed of trimeshes.
> I´m  experiencing all kind of problems with my collisions : Since false
> collisions , until  missed collisions. Sometimes  the near callback is not
> triggered even if two trimeshes visually collide.
> I examined ODE´s documentation and figured out that  it´s possible to use
> just the colision detection capabilitys of ODE.  So my sojtware does not
> create the "word"  and any body   for physics  processing. The ODE´s "step"
> of simulation is not called.  The software just create the colision space 
> and associate   geoms ( trimeshes ) to  the game entitys . 
> That´s the way the game works: 
> Create collision space
> Create Entytys and associated geoms ( trimeshes) 
> (Loop) 
> {
> Call Entity´s IA  // Each entity decide about its next movement and then
> modify it´s position and  orientation
> modify entity´s geoms // based on entity´s  position and orientation
> call colision detection (dSpaceCollide) 
> Draw 
> }
> (nearCallback) 
> {
>  call dcollide  to get contact points between the colision pair
> iinform the entitys associated with the colision geoms , about the colision
> points 
> //In the next loop the Entity´s IA will do something as colision response
> }
> Well ... first of all , I´d like to know if is that aproach correct. IS
> there any problem using just colilision detection system  of ode ?
> By the way : I´m using  the version of ODE , that uses GIMPACT instead of
> OPCODE. I downloaded  this version at :
> http://sourceforge.net/project/showfiles.php?group_id=176661&package_id=208772&release_id=458193
> In second place : I´d like to describe some tests I made to be sure that my
> trimeshes and trimesh creation process are correct: 
> I  changed the test_moving_trimesh example that comes with the  ODE-Gimpact
> project, in order to create the trimeshes from my model file format ,
> instead of creating the "bunnys" on the code.  I didn´t changed the way it
> does trimesh creation because it was the same way I do it . So I could
> notice that my trimesh models work very well . they are displayed correctly
> and collyde very well.  So I discarded problems about vertex order or normal
> orientation. 
> In my software I don´t call dGeomTriMeshSetLastTransform in order to update
> temporal coerence for the Geoms. 
> I removed all calls of  dGeomTriMeshSetLastTransform from the
> test_moving_trimesh example  and than I noticed that it does not afect
> colisions , but only the quality of physics simulation. 
> So I don´t know what I can do next  in order to understand my problem ? 
> Help me please !!!

More information about the ODE mailing list