
I'm new to Bullet Physics Library, and I'm wondering how easy it is to implement your own collision shapes.
For my application, I would like to create my own collision shape, that would represent a pipe that objects can go through. They should of course also hit outer surface of it. Pipes would be static and only shape that can collide with them would be sphere, so calculating collision point, collision normal, how deep it is, etc. is piece of cake, and I can do that without any help. Also the shapes would be designed so that there could be only one collision point between pipe and sphere at a time, so this makes the task even easier.
However, since I don't know much else about collisions (in physics simulation), I would like to know is there many other things that I need to do? Is point/normal/depth of collision enough?
I tried to look inheritance graph of already implemented shapes, and if I understood correctly, all concave shapes were constructed from triangles. Their base class (btConcaveShape) also had some triangle functions, so I though that maybe whole btConcaveShape is for triangle shapes only, which my pipe is not. So should I inherit my shape straight from btCollisionShape?
Anyway, the main idea of this post was to ask, am I doing things at least some how correctly? Or am I totally screwing things up?
