Jump to content
  • Advertisement
Sign in to follow this  

3D collision detection algorithm choice for convex to convex polytopes

This topic is 2539 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts


I apologize for the length of this post.

I've been browsing this subforum, looking at recommended articles and books on different 3d collision detection algorithms. While i understand i could always implement some sort of open-source physics engine, i would much rather program my own, for at least simply the learning experience. Keep in mind this is for narrow-phase, convex to convex polytopes.

I planned on implementing the GJK-SAT algorithm with EPA for depth. It seemed quite popular and very efficient. However, after reading numerous threads over the frustrations of GJK and especially implementing EPA, im very hesitant to go this route. From what i've read there are robustness issues with GJK-SAT such as infinite looping, precision errors (these may only have to do with the original GJK, not GJK-SAT) and or false positives (i read that casey's implementation from molly rocket causes these)?

Next on my list would have to be XenoCollides MPR algorithm. I've only be able to find a single article on this algorithm in 3D and am worried that it may be plagued by the rame robustness issues as GJK as they are quite similar. The article i've linked doesnt go over any robustness issues aside from when computing depth, which it states are only heuristic estimates and in some cases can be quite far off. This was discouraging to hear.

I also came across the Chung Wang Separating-vector Algorithm, i've only come across it in Christer Ericson's Realtime Collision Detection. Its apparently twice as fast as GJK, has anyone succesffuly implemented this algorithm?

Aside from which algorithm i use to detect whether a collision takes place, im still stuck trying to find how to obtain penetration depth. Are there any good algorithms aside from EPA which seems to be more trouble than its worth?

I would love to hear anyones input!


Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!