Integrating Bullet Collision into own FEM simulator

Post Reply
wenox
Posts: 1
Joined: Wed Jul 23, 2014 1:35 pm

Integrating Bullet Collision into own FEM simulator

Post by wenox »

Hello Everyone!

I'm pretty new to Bullet, so sorry in advance if I ask something trivial...

I've been experimenting a bit with soft body simulation lately (spring systems, finite element/volume method), now I've reached the point where soft-soft and soft-rigid interaction is the biggest problem. Currently trying to create some simple muscle simulation system as a plugin for Maya (something like Weta's Tissue: http://youtu.be/7VlthWa5pu8 ), now it's implemented as a co-rotated linear tetrahedral finite element soft body.

My simple solutions for soft-soft contacts are a bit unstable right now (checking only node - triangle collisions, and skipping edge-edge ones), hard to find the exact contact surface between more soft bodies pressed against each other, so I was thinking about using the Bullet Collision system in it, but a few things aren't clear yet and I thought I'll ask around. Detecting collisions isn't a problem, I've written a continuous triangle-point BVH-accelerated collision detection utility for it.

Is it even possible to integrate Bullet Collision and Response into an own simulation framework? So far it's absolutely unclear for me whether BulletCollision library includes detection only, or it handles soft-soft resolution aswell. If it is, could you point me towards some guidelines or examples how to achieve this?


A timestep in the framework currently looks something like this:
* move attached nodes into a predefined position
* using these as a boundary condition, solve the elasticity problem, and integrate the new velocities
* based on the candidate positions, check future collisions and update velocities somehow (here's the problem obviously)
* using the new velocities, update the nodes' positions


Any help is much appreciated. Thanks in advance, and keep up the good work!


Cheers,
Andras
Post Reply