[ODE] Newbie help.

Jon Watte (ODE) hplus-ode at mindcontrol.org
Mon Dec 18 21:48:36 MST 2006

Those are called "kinematic objects."

There are two ways:

1) Create Geoms, but not bodys, for your kinematic objects. Move the 
geoms to where the kinematics are. Everything else will move out of the 
way because of collision resolution -- but they move with significant 
force! You might want to set the ERP fairly low, and the max escape 
velocity fairly low, for contact joints with your kinematics.

2) Create a body and a geom for each kinematic. Make it pretty heavy 
(say, 100 kg, when your typical thing is 1 kg). Each step, apply a force 
that will make the in-simulation body match the position that your 
kinematic body will have NEXT frame (forward extrapolated from 
position/velocity the current frame). I e, calculate ((K-body + 
K-velocity * Timestep) - (ODE-body + ODE-velocity * Timestep)), multiply 
by mass, divide by time step, apply as a force. Do the same thing with 
What this will do is make the heavy, kinematic object follow the real 
object as much as it can, but if the kinematic object does something 
"impossible" (like run through a wall), the physics simulation will not 
explode trying to resolve that. On the other hand, the simulation will 
diverge when such an event happens.


          / h+

Terry Farnham wrote:
> I am very new to using ODE so please bear my ignorance.
> I have a system where some objects are controlled by ode and some are 
> not.  However, I want to have the objects that are not controlled by 
> ode collide and influence the objects that are controlled by ode.  
> These objects need to be always seen as being active as they are being 
> moved by another system.  I'm sure there is a mechanism in ode for 
> doing this, but have not stumbled across it.  Could someone clarify 
> how I might do this?
> ------------------------------------------------------------------------
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode

More information about the ODE mailing list