[ODE] ODE in FPS

Mark Wayland mwayland at torus.com.au
Tue Sep 30 11:33:39 MST 2003


> -How can you tell if the player's feet are "on the ground"?  I am thinking
> of adding a sphere at the bottom of the cylinder that gets a flag set upon
> collision.  If that flag is true then the player is allowed to move/jump.
> The player would be a composite of cylinder/sphere.

You could simply determine the contact position and if its "near" the feet,
then the player is on the ground. You'd probably need to do this anyway,
for stepping and slipping on surfaces that are too steep (you'll need the
contact normal(s))

> The other major problem I am having is bullets.  I am sending out small,
> high-velocity spheres.  These often go through other objects without a
> collision.  I still have to try the ray class yet; what I would like to do
> is have the ray only shoot out so far at each step, since my bullets
aren't
> instantaneous hit.

The single most frustrating thing about every free/commercial physics
package that I know of, is instantaneous collision intersection testing. I
must say that in Carmageddon TDR2000 (PC title), we didn't have to even
think about missing collisions due to fast moving objects or putting any of
the usual hacks into place (bisection etc) because we were spoilt with a
swept collision system. Because of this, our physics ran at a constant (more
or less) 25Hz and our graphics were interpolated from that (this actually
turned out to be advantageous due to our replay system which needed
interpolation anyway!).

We recently had to use a 3rd party commercial physics SDK on the PS2 and
found the instantaneous collision intersection testing problematic at
best...

Is anyone planning swept collision additions to ODE?
Is the ODE collision response dependant on penetration, which may make the
integration of swept collision detection problematic? (I've not yet had a
chance to examine the code)

Thanks and regards,
Mark



More information about the ODE mailing list