[ODE] Collisions via Minkowski sums
John DeWeese
deweese at ict.usc.edu
Thu Mar 27 11:53:02 2003
It would be a good idea to say what your purposes are, and why you must
roll your own. Perhaps someone else can lend some insight to the
original problem. Tell! Tell!
Anyway, Minkowski hulls have some significant limitations. First, they
are static, which is probably not a problem. Second, since the
Minkowsky hull is a pair-wise algorithm, so you must compute a new hull
for every possible shape you collide with. Third, the shapes must be
static, that is they cannot rotate. That's a pretty serious limitation!
Finally, computing a Minkowsky hull in 3D is a rather difficult
algorithm to code and get accurate. Maybe you can find some code that
is already fast and accurate, though.
BTW, when I say Minkowski hull, I'm referring to the hull operation
that occurs after you clip the Minkowsky sum.
BTW2, ODE can take multiple contact points, so if you find a
penetration region, perhaps you should put several contact points
randomly around that region instead of summarizing the contact with one
point.
On Thursday, March 27, 2003, at 06:42 AM, Thomas Harte wrote:
> The built in collision stuff in ODE isn't really suitable for my
> purposes, so
> I have been rolling my own. A little reading on the subject from
> various
> papers across the internet has revealed that forming the Minkowski sum
> of one of my objects and the negation of the other allows me to easily
> (given that my objects are broken into convex quantities) extract, in
> ODE terms, penetration depth and contact normal.
>
> I haven't read anything on faking a contact 'point' as ODE likes to
> think,
> so at the minute my plan is to calculate the overlap region - which
> intuition tells me will also be convex - and take the centroid of that.
>
> Has anyone on this list any experience in this sort of field? Am I
> thinking
> along the right lines?
>
> -Thomas
>
> When words aren't enough - Vodafone live! A new world of colour,
> sounds, picture messages and information on your mobile. <a
> href="http://ad.doubleclick.net/clk;4909903;7724245;q?http://
> www.vodafone.co.uk/live">
> Click here</a> to find out more.
>