3D deformable model and simulation engine

Started by
4 comments, last by PolyVox 15 years, 7 months ago
Hi Everyone. As part of my research I need to make use of a 3D deformable model to simulate organ behaviour in a heuristic manner. Because i need to be able to interact with this in real-time i need a physics engine that is not to computaionally expensive. Eventually i would introduce haptic technology with the model to enable touch The engine should allow me to import objects as x,y,z vertices such as .obj files or .3ds files. Also because i am doing research i need access to point by point vertices, integrate properties such as youngs modulus, and have control over timesteps in the simulation etc... eventually i'd like to map a texture (jpeg) to give the impression of an organ, so OpenGL compatible software is useful. maths and vector libraries would be helpful. I am ok with basic C++ I have considered FEM but computation is pathetically slow, so i've kind of narrowed down Spring-Mass systems because they are quicker (volumetric-tetrahedral spring mass is still a bit slow) or Chainmail. Trouble is that i can't seem to find any ready built software even though they are widely used for simulation and research purposes. Any help on where i could begin given some of the requirements? Thanks
Advertisement
FastLSM: Fast Lattice Shape Matching for Robust Real-Time Deformation
RealMatter Soft Body Physics Engine

Do you have to write the physics engine yourself? Bullet (and I think Havok and PhysX) support soft body simulation.
Thanks for the reply. I don't have to write the engine myself. But i do need one which gives me the flexibility to add functions and a haptic device (most likely the Novint Falcon) so haptics SDK's also need to be integrated.

PhysX/Havoc/HaptX are ones that i can't use because they are very much games not research oriented. Bullet is another one which is based on particles but is not great for real time. Graphically, the model doesn't have to be spectacular, it is just required to have the right softbody type behaviour and be interactable.

Ideally i'd use a Spring-Mass system or Chainmail, but i'm stuggling to find any available for commercial or personal use :( Source code is a pain to find and then because it's written for a particular task by some person, understanding where to input new c++ functions is a mountain trek. I'd rather not start from scratch, like build a C++ program with classes for parsing/importing .obj files then classes for masses, velocities, springs, vectors etc... then on top use OpenGL to render. Could take months! Hopefully i come across something soon!
I have spent the last couple days searching the web for anything related to mass-springs/chainmail. Closest i got was here:

http://panoramix.ift.uni.wroc.pl/~maq/eng/softbodyrt.php

After reading the source code, i feel completely put off. Integrating C++ and OpenGL is a nightmare (like this guy has done anyway).

Any help appreciated given my restrictions (that may include IQ as well lol). Any ideas?
Have you checked with www.h3d.org? Maybe this could be something for your, the people there might be able to even help you out with the chainmail implementation altough lacking Physix connection (read today)...

Maybe this is useful?

http://www.opentissue.org/wikitissue/index.php/Main_Page

This topic is closed to new replies.

Advertisement