Not logged in, Join Here! or Log In Below:  
 
News Articles Search    
 

 Home / General Programming / Dynamic rotated/scaled ellipsoid collision detection Account Manager
 
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.
 
EligZero

February 07, 2005, 12:32 AM

Im trying to find an algorithm for a dynamic (Swept) collision detection between two rotated and (obviously) scaled ellipsoids. Anyone have any links or any info? Thanks.

 
Reedbeta

February 07, 2005, 01:41 AM

A google search for "colliding ellipsoids" gave this:

Exact Collision Detection of Two Moving Ellipsoids Under Rational Motions
http://www.cs.hku.hk/research/techreps/document/TR-2002-15.pdf

 
Christer Ericson

February 07, 2005, 02:24 AM

EligZero wrote: Im trying to find an algorithm for a dynamic (Swept) collision detection between two rotated and (obviously) scaled ellipsoids.


People (typically) don't do collision tests between pairs of ellipsoids, whether dynamic or not. If you've looked at the paper that Reedbeta referenced (which is one of a few standard references for the problem) you know why: it's a nontrivial problem with nontrivial solutions.

I'd seriously consider using a different (set of) bounding volume(s) for object-object collision if I were you.


Christer Ericson
http://realtimecollisiondetection.net/

 
EligZero

February 07, 2005, 08:25 PM

Thanks ReedBeta. Im mostly right now attempting to create a highly complete collision detection class. One that supports sphere, ellipsoids, rays, bounding boxes, and polygons with dynamic swept collision detection between all. (I hate static collision tests and dividing planes and what not. I much prefer to calculate when object a will collide with object b and the appropriate response) Currently I have almost everything implemented aside from OBB vs OBB, and ellipsoid vs ellipsoid. Thanks for the help.

 
QorpsE

February 12, 2005, 11:43 AM

Those swept tests don't mean a whole lot when you have objects rotating, it's incredibly difficult to get good results in something like say, body to body respone physics from collisions with linear velocity only. In this case, detection with "morphing" geometry is far more desirable, although redon, kim/jarek and doom3 use rotational sweeps, I have no clue how to implement it unfortunately, I am no mathematician...

I tried redon's sigcourse notes, I couldn't quite get everything to work out, probably because I get pretty lost with notation, my math background is pretty weak.

Anyway, I dunno when someone will feel kind enough to provide say, some general collision code for rotating triangle pairs, come on people it's 2005 :P.

 
QorpsE

February 13, 2005, 01:37 AM

that should've been kim and rossignac, my apologies.

 
rompa69

February 13, 2005, 05:16 AM

Doom3 uses rotational sweeps? You've never think to look at its collision/physics ... uggh. Perhaps you are better off with linear sweeping and rotational "snapping" at each timestep, especially for games?

 
QorpsE

February 13, 2005, 06:46 AM

just try and represent a spinning blade with linear sweep with rotational snaps (i take it you just mean rotating the object into place each timestep, and from there doing the linear sweep), and you will see what i mean. i'm sure someone is going to suggest i just use something like a disc or some other primitive approximation for these cases. to those people i would like to say that you are simply being foolish, i'm not going to cover why this is just a dumb thing to do, i doubt my fingers could take such a beating.

 
This thread contains 8 messages.
 
 
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.