Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

AFAIK, many physics engines like Physx and Havok don't incorporate cylinder as basic shape because it is expensive than sphere, box and capsule. But bullet engine does incorporate cylinder as a basic shape. Do they found any fast algorithm to simulate the cylinder and what is that?

share|improve this question
Havok.. hkpCylinderShapeClass. Why do you suspect a cylinder is more expensive than a capsule? I don't know about Physx, but Havok most certainly supports cylinders, capsules and very complex geometries. But the cylinder is not considered expensive. Of course, the sphere is the "most" trivial, with the box following. The cylinder/capsule should follow (it's actually based on segment vs something collision queries, and these are actually pretty cheap to compute). – teodron Sep 17 '13 at 11:26
@teodron I know capsule/capsule intersection test is cheap, but isn't cylinder/cylinder intersection a lot more expensive ? – JamesAMD Jun 18 '15 at 7:59
@JamesAMD to answer your question accurately, I should look into specific implementation details of those collision queries and preferably benchmark them on different processor architectures. Looks like finding the exact collision point is tricky, involving a bit of conjugate gradient search, as detailed by Eberly: . Aside from that, as I said, one needs benchmarks to see how much the "early-out" tests help avoid the "expensive" part :). – teodron Jun 19 '15 at 11:52
@JamesAMD I'm not sure about Bullet, but last time I meddled with Havok, I think the actual collision between two cylinders boils down to treating them as convex solids and using GJK (which is indeed more expensive). But since Havok is not open source, judging by how the cylinder shape is formed, one can only hypothesize that GJK or anything else as general is the way to go. See here:… – teodron Jun 19 '15 at 11:58

I don´t know about the speed or exact nature of the cylinder shaped collider in bullet, but this paper gives a nice overview about cylinder collision.

If you are only after the implementation of their collision you may want to start here and try to recreate what they are doing with it.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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