Looking for code: triangular collision detection It's got to be out there somewhere

Considering that it would be used for something else, rather than a standalone release, it’s not really easy to find. In fact, I’ve been checking up Google for months now.

Does anyone know if there is ANY COMPLETE code out there that performs triangular collision detection (or better yet: intersection) in CUDA. I need it strictly for academic purposes (it’s related to my thesis).

CUDA’s samples include a particles sample, which does not suit my needs, because the collision detection is done for points (spheres).

If you are aware of complete code out there, please let me know. If have developed something like it and are willing to release it, I would appreciate it. My thesis supervisor stated that he would be willing to respond to any inquiries related to usage.


Thats the paper ive stuck with.


our company Elegant Mathematics Ltd. has Delaunay tessellation algorithm where collisions of tetrahedrons or triangles are performed. Parts of this algorithm are already on CUDA now.

In case if you will provide me more detailed information (sp@elegant-mathematics.com) what exactly do you need for GPU, we may probably find a solution.

However, the solution will be commercial… sorry, no open source, we are private company.

Best regards,


I have complete and documented implementations of a Devillers triangle-triangle intersection test (http://jgt.akpeters.com/papers/GuigueDevillers03/) and a “Segment-piercing” triangle-triangle
intersection test (based upon examples from the book http://realtimecollisiondetection.net/).

I used them in my master thesis where I used them for a complete hierarchical collision detection system running on CUDA and Cell.

I have not done so as of yet, but I’d be willing to release it under some kind of open-source license when I have talked it through with the
other person that also wrote the code.

I came to think of it: Another widely used hierarchical collision detection called PQP (http://www.cs.unc.edu/~geom/SSV/) has a fairly robust triangle-triangle intersection detection algorithm which handles co-planarity. I believe it’s based upon the Muller paper.

Allow to me to clarify. I am look for actual CODE (and not just pure C/C++, but CUDA ready code) that is available under some sort of open source license. I am not looking to reinvent the wheel using someone else’s algorithm. In fact, my paper concentrates on something else, and the code that I need is used for a different purpose within the paper.

The project I developed has an API for performing triangle-triangle intersection tests between two triangle “soups” (That is, if there are N triangles in each soup it will perform N^2 tests and provide a boolean value for each combination). As I’ve said, it runs on CUDA and will with the current kernel (it basically maps one triangle-triangle test onto one thread) give you around 80 million triangle/triangle intersection tests per second for decent problem sizes. Some more advanced optimizations that I have done later on (I cannot share this though) will allow it to run at ~200 million per second.

Could you elaborate on what you need it for and what sort of performance you need?

I sent you a PM

I got around to release the code under the GPL today and put it on my webpage. You can find it at http://andreasfugl.dk/projects.html (look for libOPP)