I'm currently trying to implement deformable bodies in my game. I've integrated Bullet into my engine and while everything is working fine, I can't figure out how to create a clay-like body.
The most basic way I can explain what I want to do is to modify the collision shape of bodies in real time. I want the player to be able to deform certain bodies with the mouse. I've tried using Bullet's soft bodies, but so far I've been unable to get them to behave the way I want them to (making a stretchy box has proven difficult). They either collapse or don't stretch and there isn't enough documentation to understand what all of the parameters are. I'm also concerned about the performance impact of using large or too many soft bodies.
After getting stuck on the soft bodies I decided to use a triangle mesh instead, but I can't find how access the mesh data when needed. The recommended way of changing a collision shape is removing and adding the body each time the shape needs to be changed, but this could happen frequently and I'm not sure what the performance impact of it is. There is also the issue of updating objects that may end up inside the new shape.
I was wondering if any has done this before or has any tips on how to approach the problem.
I don't necessarily expect Bullet to support what I want to do, I just don't want to reinvent the wheel. If what I want to do is impossible with the default implementation of Bullet, can someone give me a starting point to implement myself?
P.S. Sorry for any grammar mistakes, haven't been getting much sleep.