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.

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.


February 07, 2005, 01:41 AM

A google search for "colliding ellipsoids" gave this:

Exact Collision Detection of Two Moving Ellipsoids Under Rational Motions

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


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.


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.


February 13, 2005, 01:37 AM

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


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?


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.