Kenny Erleben, DIKU
Brief Summary
During this talk OpenTissue will be presented, including a brief
flashback of the history, motivation, and ambitions behind OpenTissue,
together with a structural overview of the contents of OpenTissue spiced
with numerous examples of simulations showing OpenTissue in action.
Finally the talk will be concluded with some thoughts on the future.
Background History of OpenTissue
The history of OpenTissue goes back to November 2001, where a small
group of people: K. Erleben, H. Dohlmann, J. Sporring, and K. Henriksen
started to collect a toolbox of code pieces of their own work. The
ambition was to ease project collaboration and teaching efforts. In the
beginning, OpenTissue worked as a playground for experiments, but soon
it became apparent that the code pieces in OpenTissue were conveniently
reused again and again. This was the turning point for OpenTissue, and
the first thoughts was seeded towards creating a toolbox for
physics-based animation. Later around August 2003 it became clear that
students often re-invent the wheel during their project work, limiting
the time set aside for getting a feeling and in-depth understanding of
the simulation methods they work with. OpenTissue thus proved to be a
valuable tool for student projects also, and OpenTissue was released
under the terms of the GNU Lesser General Public License. Today
OpenTissue works as a foundation for research and student projects in
physics-based animation at the Department of Computer Science,
University of Copenhagen (commonly known as DIKU).
Due to the experimental nature of OpenTissue, OpenTissue contains a wide
variety of algorithms and data structures. Some code-pieces are merely
wrappers of third party software ensuring that the programmers can use
these tools within our common framework. Other code pieces consist of
tools extracted from our own research projects in soft tissue simulation
and medical image data acquisition. An increasing amount of students are
beginning to contribute with their own code and are helping greatly in
maintaining and improving OpenTissue. The list of tools in OpenTissue is
constantly growing a summary of methods and data structures at this time
of writing includes:
Rectilinear 3D Grid Data structures
Twofold Mesh Data Structure
Tetra4 Mesh Data Structure
Chan-Vese Segmentation Tools
OpenGL based signed distance map Computations
OpenGL based Voxelizer
Quasi Static Stress-Strain Simulation
Relaxation based Particle System Simulation
(support for surface meshes, solids, cloth meshes,
pressure soft models, self-intersection and much more)
Dantzig LCP Solver, Path and Lemke wrappers (LCP solvers)
CJK, SAT, VClip and other algorithms for Collision Detection
Mesh Plane Clipper and Patcher
QHull Convex Hull wrapper
Classes for generating input/output files for TetGen
Script files for Maya and 3DMax for generating Mesh data files
Generic Bounding Volume Hierarchies with Custom Bottom-Up Construction,
Singel and Tandem Traversals etc.
Multi-body Dynamics Velocity based Complementarity Formulation
First order world Rigid Body Simulation
Volume visualization using 3D texture based view aligned slabbing
with 12 bit pre-integration
and much more...
|