Mesh-to-mesh collision test. Is there a C# solution somewhere?

Hi,

I need to perform intersection tests between concave meshes every once in a while.
The Unity physics library won’t let you run that type of collision (which obviously tends to be fairly slow).

However, I’m looking for a work around. I don’t need a collision point/normal, but just a true/false return. I could rewrite that kind of routine, but I’m guessing that there are some good C# libraries around.

Any idea?

Jitter Physics can do it.

Is there a reason you can’t divide the objects into a series of smaller convex objects and just use the built-in stuff?

I was wrong about Jitter’s capabilities. I’ve just checked, it reliably detects the intersections between convex shapes, but if one of the objects is concave the detections fails most of the time.

PS
Wrong again. It CAN detect intersections between concave shapes, it is just not as convenient by default as with convex and primitive shapes. I’ve attached my test project that uses the latest unmodified version of Jitter compiled into a dll.

1507076--85190--$Untitled-1.png

1507076–85191–$TestProject.zip (231 KB)

Tks for replies, guys.
I don’t have much control about input meshes as the application I am building for my client is supposed to load virtually anything the client decides to feed it (as .OBJ files, basically).
I haven’t found much that suited this requirement online, so I ended up building my own solution using resources I found here and there, namely Box/Box intersection, triangle/Box intersection and triangle/triangle intersection, as well as a space partitioning approach to organize the mesh data.