I am building a voxel engine on Ogre with bullet as a physics engine.
I separated my blocks into chunks to help batch together render calls.
At the moment, each chunk's physics is handled by a btBvhTriangleMeshShape that is constructed through the vertices and indices.
Each time the user breaks a voxel, I modify the vertex and index array and construct a new btBvhTriangleMeshShape.
Unfortunately, because btBvhTriangleMeshShape has to recreate an optimizedBVH each time it is created, this becomes quite slow, taking several seconds each time the user breaks a block.
I've alternatively tried using a btConvexTriangleMeshShape, but the broadphase collision detection now becomes very low performance dropping the fps to single digits if the player is near the blocks.
What is the proper collisionshape to choose?