(I've split this question into two. For 2D, see: 2D collision-detection middleware)

Are there any recommendable middleware available for 3D collision detection?

I believe I've heard Bullet has a pretty good 3D collision detection that can be used without the physics engine. I'd like to hear if people have any experiences on Bullet or other libraries for 3D collision detection specifically.

  • \$\begingroup\$ Pekuja you was evil in that question :P You managed to get 2 replies, one about Bullet, and one about Box2D... Why you had to ask both at the same time? :P \$\endgroup\$ – speeder Aug 30 '10 at 17:51
  • \$\begingroup\$ Yeah, I realised I should have asked separate questions about 2D and 3D. I'm sorry about that. I wonder if it's possible to split this... \$\endgroup\$ – Pekuja Sep 1 '10 at 2:36

If you just want collision detection, and not a full physics engine, it might be worth taking a look at OPCODE - http://www.codercorner.com/Opcode.htm (although it is a bit old now, there may be newer/better things out there?)


Bullet has a very well-working collision pipeline. They support various broadphases (sweep n prune, hashed broadphase, 3-axis sweep, etc) and have narrowphase with optimized bv-tree's. I've worked professionally with bullet for over a year and although their performance is not as good as havok(which I've worked with for over two years), it's free and the source code is maintained and enhanced often.

It should be fairly easy to look into their source-code to figure out how to only use their collision detection.

PhysX also has a collision-detection network but I haven't relly looked into it. Havok is a solution that costs a lot of money and I don't think anyone can afford retrieving their source-code unless you're a professional developer. They do have free-to-use libraries but then you can't modify it.

  • \$\begingroup\$ I agree. My friend used PhysX in university and had a lot of success with it - not sure how it caters for the 'just collision detection plox' market though. \$\endgroup\$ – Jonathan Dickinson Aug 31 '10 at 13:33

Open Dynamics Engine is another semi-popular open source middleware solution for physics and collision.


PhysX is another popular collision/physics middleware from NVIDIA. Binary available.


Last but not least is Havok which is the gold standard of collision/physics. Binary available.



Not the answer you're looking for? Browse other questions tagged or ask your own question.