[ODE] BSP and ODE's collision system

gl gl at ntlworld.com
Tue Apr 22 08:30:02 2003


> Couldnt get it. Do you think I can perform collision detection ONLY using
BSP ? How would it go ?

I meant you can collide ODE's collision primitives (spheres, boxes,
cylinders) against the BSP directly, if you're willing to write the code
yourself.  Check out the link I gave for some good ideas how to do it:
http://www.gamasutra.com/features/20010324/melax_01.htm

>   First, the BSP is already a spacial hierarchy, so colliding
> > primitives against it is already fairly optimized.  Second, you would
avoid
> > having to duplicate/triangulate the data.
>
> Couldnt get it either :) what do you exactly mean by
duplicating/triangulation of data..what scenario ?

Well, people suggested that you create triangles from your BSP so that you
can collide them with the other ODE primtives via the contributed dTriList
triangle collider.  That will work, but then you need to keep a copy of the
triangles in memory.  If you already do that then it's OK I guess, except
that you now you also need extra memory for Opcode's bounding volume
hierarchy (TriList uses Opcode to do the collisions) .  As the BSP is
already a spatial hierarchy (and thus primitive collisions against it should
be fairly efficient), it's probably better to collide with it directly.
--
gl