[ODE] Boxiangle collision

Chris Campbell chris.campbell at lincmedia.co.jp
Fri May 10 01:02:01 2002


> > Now, ignoring multiple contacts is as easy as just using 
> the contact with
> > the deepest penetration. But when should it be done? :)
> 
> In case 2, the contact normals are parallel, so use the 
> deepest one.  In

Wait a minute - the contact normal between a triangle and a sphere is...
oh...
> .... located at the point on the
> triangle that is closes to the center of the sphere, where the 
> contact normal
> is the line from the contact point to the sphere center?  
yes. So in case 2 for the triangle in the flat heightmap which the sphere
center is not directly above, the normal is not parallel. This non vertical
normal causes the sphere to be pushed sideways a little. Not often and not
by much but it is visibly annoying.


> Now suppose the ball lands on a "ridge," between two 
> triangles.  Then what?  

This is no problem because the normals are exactly the same, although I
don't know what happens when two identical contacts are attached to
bodies... ?


> 4) The sphere rolls into a "divot" where THREE triangles 
> share a vertex.
> 5) The sphere lands on a "peak" where three triangles share a vertex.

4=2 and 5=3


> 6) With small triangles and large spheres, the sphere could 
> conceivably
> intersect N triangles.  Then what?  Pick the nearest 2 or 3?

I don't know :)

ChrisC