[ODE] ODE and FreeSOLID

Erin Catto erincatto at sbcglobal.net
Tue Apr 19 22:06:43 MST 2005


So how should one go about doing convex-convex collision in ODE?

Here's my conjecture:

1. You need the separating axis of minimum depth, just like the box-box
case. Once you have this you can just do 2d poly clipping.

2. The trick is to adapt GJK to quickly find the minimum separating axis. I
have some ideas about this, but nothing I've tested. One approach might be
to shrink overlapping polyhedrons until they no longer overlap, and then
find the closest features. Now use these closest features as the starting
point for a local search for the minimum separating axis in the full size
polyhedrons.

Erin

-----Original Message-----
From: ode-bounces at q12.org [mailto:ode-bounces at q12.org] On Behalf Of Pierre
Terdiman
Sent: Tuesday, April 19, 2005 8:51 AM
To: ode at q12.org
Subject: Re: [ODE] ODE and FreeSOLID

Unless I'm missing something FreeSOLID == Solid 2.0.

So:

- for arbitrary mesh stuff (primitive-vs-mesh, mesh-vs-mesh) Opcode is
better

- for convex meshes it gives you the distance between two objects using GJK

- ...which is useless in a penetration-depth-based engine like ODE. It
doesn't give you a penetration vector (this is only available in Solid 3.5)


And then, even with Solid 3.5 :

- the EPA algorithm out there sometimes fails and makes the sim explode

- when it doesn't, it's still just a single vector, not enough to generate
stable simulations (remember the early box-box code in ODE ?)

- so you still need something else on top of that, to compute a correct
contact manifold out of the penetration vector


All in all.... well, good luck :)

- Pierre


----- Original Message ----- 
From: "Rodrigo Hernandez" <kwizatz at aeongames.com>
To: <ode at q12.org>
Sent: Tuesday, April 19, 2005 4:54 PM
Subject: Re: [ODE] ODE and FreeSOLID


> Tanguy Fautre wrote:
>
> >
> > I've been following this discussion and I was wondering what are the
> > advantages of FreeSOLID over OPCODE.
>
> Well, the GJK algorithm is the feature that was mentioned before in the
> list, here is the FreeSOLID info page:
>
> http://www.win.tue.nl/~gino/solid/
>
> I am not too familiar with OPCODE to be able to tell how much of an
> advantage it would be to use one or the other, but well,
> its not like we'll be dropping OPCODE, just adding the FreeSOLID option
> for those who want it, once implemented we can benchmark both.
>
> besides, the FreeSOLID project has been sitting idle for a year on my
> sourceforge project list, it would be a waste for me not to work on it a
> bit :)
>
> Cheers!
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode
>
>
>


_______________________________________________
ODE mailing list
ODE at q12.org
http://q12.org/mailman/listinfo/ode



More information about the ODE mailing list