Jan Bender, Matthias Müller, Miguel A. Otaduy, Matthias Teschner and Miles Macklin, A Survey on Position-Based Simulation Methods in Computer Graphics, Computer Graphics Forum 33, 6, 2014

Preprint    BibTex    Source Code


Abstract

The dynamic simulation of mechanical effects has a long history in computer graphics. The classical methods in this field discretize Newton's second law in a variety of Lagrangian or Eulerian ways, and formulate forces appropriate for each mechanical effect: joints for rigid bodies; stretching, shearing, or bending for deformable bodies; and pressure, or viscosity for fluids, to mention just a few. In the last years the class of position-based methods has become popular in the graphics community. These kinds of methods are fast, stable and controllable which make them well-suited for use in interactive environments. Position-based methods are not as accurate as force-based methods in general but they provide visual plausibility. Therefore, the main application areas of these approaches are virtual reality, computer games and special effects in movies.

This state-of-the-art report covers the large variety of position-based methods that were developed in the field of physically-based simulation. We will introduce the concept of position-based dynamics, present dynamic simulation based on shape matching and discuss data-driven upsampling approaches. Furthermore, we will present several applications for these methods.


Images

Cloth

Cloth

Wrinkle Mesh

Wrinkle Mesh

Armadillos

Armadillos

Ducks and tori

Ducks and tori

hair

Hair simulation


Jan Bender, Kenny Erleben, Jeff Trinkle and Erwin Coumans, Interactive Simulation of Rigid Body Dynamics in Computer Graphics, In STAR Proceedings of Eurographics, 2012

PDF BibTex


Abstract

Interactive rigid body simulation is an important part of many modern computer tools. No authoring tool nor a game engine can do without. The high performance computer tools open up new possibilities for changing how designers, engineers, modelers and animators work with their design problems.

This paper is a self contained state-of-the-art report on the physics, the models, the numerical methods and the algorithms used in interactive rigid body simulation all of which has evolved and matured over the past 20 years. The paper covers applications and the usage of interactive rigid body simulation.

Besides the mathematical and theoretical details that this paper communicates in a pedagogical manner the paper surveys common practice and reflects on applications of interactive rigid body simulation. The grand merger of interactive and off-line simulation methods is imminent, multi-core is everyman's property. These observations pose future challenges for research which we reflect on. In perspective several avenues for possible future work is touched upon such as more descriptive models and contact point generation problems. This paper is not only a stake in the sand on what has been done, it also seeks to give newcomers practical hands on advices and reflections that can give experienced researchers afterthought for the future.

CrashTest

Crash test

OfficeToy

Newton's cradle

roof_on_impact

Roof on impact

generalconvex_jinngine_3012

Jinngine

temple_260k

Temple

silo_1

Silo


Fabian Bauer, Martin Knuth and Jan Bender, Screen-Space Ambient Occlusion Using A-buffer Techniques, In IEEE Computer-Aided Design and Computer Graphics, 2013

 

PDF BibTex


Abstract

Computing ambient occlusion in screen-space (SSAO) is a common technique in real-time rendering applications which use rasterization to process 3D triangle data. However, one of the most critical problems emerging in screen-space is the lack of information regarding occluded geometry which does not pass the depth test and is therefore not resident in the G-buffer. These occluded fragments may have an impact on the proximity-based shadowing outcome of the ambient occlusion pass. This not only decreases image quality but also prevents the application of SSAO on multiple layers of transparent surfaces where the shadow contribution depends on opacity. We propose a novel approach to the SSAO concept by taking advantage of per-pixel fragment lists to store multiple geometric layers of the scene in the G-buffer, thus allowing order independent transparency (OIT) in combination with high quality, opacity-based ambient occlusion (OITAO). This A-buffer concept is also used to enhance overall ambient occlusion quality by providing stable results for low-frequency details in dynamic scenes. Furthermore, a flexible compression-based optimization strategy is introduced to improve performance while maintaining high quality results.


Video

 


Crispin Deul and Jan Bender, Physically-Based Character Skinning, Virtual Reality Interactions and Physical Simulations (VRIPhys), 2013

PDF BibTex


Abstract

In this paper we present a novel multi-layer model for physically-based character skinning. In contrast to geometric approaches which are commonly used in the field of character skinning, physically-based methods can simulate secondary motion effects. Furthermore, these methods can handle collisions and preserve the volume of the model without the need of an additional post-process. Physically-based approaches are computationally more expensive than geometric methods but they provide more realistic results. Recent works in this area use finite element simulations to model the elastic behavior of skin. These methods require the generation of a volumetric mesh for the skin shape in a pre-processing step. It is not easy for an artist to model the different elastic behaviors of muscles, fat and skin using a volumetric mesh since there is no clear assignment between volume elements and tissue types. For our novel multi-layer model the mesh generation is very simple and can be performed automatically. Furthermore, the model contains a layer for each kind of tissue. Therefore, the artist can easily control the elastic behavior by adjusting the stiffness parameters for muscles, fat and skin. We use shape matching with oriented particles and a fast summation technique to simulate the elastic behavior of our skin model and a position-based constraint enforcement to handle collisions, volume conservation and the coupling of the skeleton with the deformable model. Position-based methods have the advantage that they are fast, unconditionally stable, controllable and provide visually plausible results.


Video

 


Images

Woody1small linear blend skinning
Woody2small our approach

Nikolas Schmitt, Martin Knuth, Jan Bender and Arjan Kuijper, Multilevel Cloth Simulation using GPU Surface Sampling, Virtual Reality Interactions and Physical Simulations (VRIPhys), 2013

PDF BibTex


Abstract

Today most cloth simulation systems use triangular mesh models. However, regular grids allow many optimizations as connectivity is implicit, warp and weft directions of the cloth are aligned to grid edges and distances between particles are equal. In this paper we introduce a cloth simulation that combines both model types. All operations that are performed on the CPU use a low-resolution triangle mesh while GPU-based methods are performed efficiently on a high-resolution grid representation. Both models are coupled by a sampling operation which renders triangle vertex data into a texture and by a corresponding projection of texel data onto a mesh. The presented scheme is very flexible and allows individual components to be performed on different architectures, data representations and detail levels. The results are combined using shader programs which causes a negligible overhead. We have implemented CPU-based collision handling and a GPU-based hierarchical constraint solver to simulate systems with more than 230k particles in real-time.


Video

 


Images

Cloth
Cloth
Cloth

Manuel Scholz, Jan Bender and Carsten Dachsbacher, Level of Detail for Real-Time Volumetric Terrain Rendering, In Proceedings of Vision, Modeling and Visualization, 2013, Best paper award

 

PDF BibTex


Abstract

Terrain rendering is an important component of many GIS applications and simulators. Most methods rely on heightmap-based terrain which is simple to acquire and handle, but has limited capabilities for modeling features like caves, steep cliffs, or overhangs. In contrast, volumetric terrain models, e.g. based on isosurfaces can represent arbitrary topology. In this paper, we present a fast, practical and GPU-friendly level of detail algorithm for large scale volumetric terrain that is specifically designed for real-time rendering applications. Our algorithm is based on a longest edge bisection (LEB) scheme. The resulting tetrahedral cells are subdivided into four hexahedra, which form the domain for a subsequent isosurface extraction step. The algorithm can be used with arbitrary volumetric models such as signed distance fields, which can be generated from triangle meshes or discrete volume data sets. In contrast to previous methods our algorithm does not require any stitching between detail levels. It generates crack free surfaces with a good triangle quality. Furthermore, we efficiently extract the geometry at runtime and require no preprocessing, which allows us to render infinite procedural content with low memory consumption.


Video

 


Images

Terrain1
Terrain2
Terrain3
Terrain4

Jan Bender, Daniel Weber and Raphael Diziol, Fast and stable cloth simulation based on multi-resolution shape matching, Computers & Graphics 37, 8, 2013

PDF BibTex


Abstract

We present an efficient and unconditionally stable method which allows the deformation of very complex stiff cloth models in real-time. This method is based on a shape matching approach which uses edges and triangles as 1D and 2D regions to simulate stretching and shearing resistance. Previous shape matching approaches require large overlapping regions to simulate stiff materials. This unfortunately also affects the bending behavior of the model. Instead of using large regions, we introduce a novel multi-resolution shape matching approach to increase only the stretching and shearing stiffness. Shape matching is performed for each level of the multi-resolution model and the results are propagated from one level to the next one. To preserve the fine wrinkles of the cloth on coarse levels of the hierarchy we present a modified version of the original shape matching method. The introduced method for cloth simulation can perform simulations in linear time and has no numerical damping. Furthermore, we show that multi-resolution shape matching can be performed efficiently on the GPU.


Video

 


Images

Woody1small
Woody2small
Dragon3
Dragon4

Jan Bender, Matthias Müller, Miguel A. Otaduy and Matthias Teschner, Position-based Methods for the Simulation of Solid Objects in Computer Graphics, In STAR Proceedings of Eurographics, 2013

PDF    BibTex    Source Code


Abstract

The dynamic simulation of solids has a long history in computer graphics. The classical methods in this field are based on the use of forces or impulses to simulate joints between rigid bodies as well as the stretching, shearing and bending stiffness of deformable objects. In the last years the class of position-based methods has become popular in the graphics community. These kinds of methods are fast, unconditionally stable and controllable which make them well-suited for the use in interactive environments. Position-based methods are not as accurate as force based methods in general but they provide visual plausibility. Therefore, the main application areas of these approaches are virtual reality, computer games and special effects in movies.

This state of the art report covers the large variety of position-based methods that were developed in the field of deformable solids. We will introduce the concept of position-based dynamics, present dynamic simulation based on shape matching and discuss data-driven approaches. Furthermore, we will present several applications for these methods.


Images

Cloth

Cloth

Wrinkle Mesh

Wrinkle Mesh

Armadillos

Armadillos

Ducks and tori

Ducks and tori

hair

Hair simulation


Jan Bender and Crispin Deul, Adaptive cloth simulation using corotational finite elements, Computers & Graphics 37, 7, 2013

PDF BibTex

 


Abstract

In this article we introduce an efficient adaptive cloth simulation method which is based on a reversible $\sqrt{3}$-refinement of corotational finite elements. Our novel approach can handle arbitrary triangle meshes and is not restricted to regular grid meshes which are required by other adaptive methods. Most previous works in the area of adaptive cloth simulation use discrete cloth models like mass-spring systems in combination with a specific subdivision scheme. However, if discrete models are used, the simulation does not converge to the correct solution as the mesh is refined. Therefore, we introduce a cloth model which is based on continuum mechanics since continuous models do not have this problem. We use a linear elasticity model in combination with a corotational formulation to achieve a high performance. Furthermore, we present an efficient method to update the sparse matrix structure after a refinement or coarsening step. The advantage of the $\sqrt{3}$-subdivision scheme is that it generates high quality meshes while the number of triangles increases only by a factor of 3 in each refinement step. However, the original scheme was not intended for the use in an interactive simulation and only defines a mesh refinement. In this article we introduce a combination of the original refinement scheme with a novel coarsening method to realize an adaptive cloth simulation with high quality meshes. The proposed approach allows an efficient mesh adaption and therefore does not cause much overhead. We demonstrate the significant performance gain which can be achieved with our adaptive simulation method in several experiments including a complex garment simulation.


Video

 



Daniel Weber, Jan Bender, Markus Schnoes, Andre Stork and Dieter Fellner, Efficient GPU data structures and methods to solve sparse linear systems in dynamics applications, In Computer Graphics Forum, Computer Graphics Forum 32, 1, 2013

PDF BibTex

 


Abstract

We present graphics processing unit (GPU) data structures and algorithms to efficiently solve sparse linear systems that are typically required in simulations of multi-body systems and deformable bodies. Thereby, we introduce an efficient sparse matrix data structure that can handle arbitrary sparsity patterns and outperforms current state-of-the-art implementations for sparse matrix vector multiplication. Moreover, an efficient method to construct global matrices on the GPU is presented where hundreds of thousands of individual element contributions are assembled in a few milliseconds. A finite-element-based method for the simulation of deformable solids as well as an impulse-based method for rigid bodies are introduced in order to demonstrate the advantages of the novel data structures and algorithms. These applications share the characteristic that a major computational effort consists of building and solving systems of linear equations in every time step. Our solving method results in a speed-up factor of up to 13 in comparison to other GPU methods.


Video

 


Images

Bridge

Bridge

Cloth

Cloth

Armadillo

Armadillo

Pensatore

Pensatore

 


Raphael Diziol, Jan Bender and Daniel Bayer, Robust Real-Time Deformation of Incompressible Surface Meshes, In Proceedings of ACM SIGGRAPH / EUROGRAPHICS Symposium on Computer Animation (SCA), 2011, Best paper award (Honorable Mention)

PDF BibTex

 

ACM, (2011) This is the author’s version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definite version will be published in Proceedings of the 2011 ACM SIGGRAPH/Eurographics Symposium on Computer Animation (2011).


Abstract

We introduce an efficient technique for robustly simulating incompressible objects with thousands of elements in real-time. Instead of considering a tetrahedral model, commonly used to simulate volumetric bodies, we simply use their surfaces. Not requiring hundreds or even thousands of elements in the interior of the object enables us to simulate more elements on the surface, resulting in high quality deformations at low computation costs. The elasticity of the objects is robustly simulated with a geometrically motivated shape matching approach which is extended by a fast summation technique for arbitrary triangle meshes suitable for an efficient parallel computation on the GPU. Moreover, we present an oscillation-free and collision-aware volume constraint, purely based on the surface of the incompressible body. The novel heuristic we propose in our approach enables us to conserve the volume, both globally and locally. Our volume constraint is not limited to the shape matching method and can be used with any method simulating the elasticity of an object. We present several examples which demonstrate high quality volume conserving deformations and compare the run-times of our CPU implementation, as well as our GPU implementation with similar methods.


Video

 


Images

Armadillos

Armadillos

Balls

Balls

Ducks and tori

Ducks and tori

Volume loss comparison

Volume loss comparison

Inverted Armadillo

Inverted Armadillo

Twirl

Twirl

Comparison with FastLSM

Comparison with FastLSM

Velocity correction

Velocity correction

 


Raphael Diziol, Jan Bender and Daniel Bayer, Volume Conserving Simulation of Deformable Bodies, Short Paper Proceedings of Eurographics, Munich, March 2009

PDF BibTex


Abstract

We present a new method for simulating volume conserving deformable bodies using an impulse-based approach. In order to simulate a deformable body a tetrahedral model is generated from an arbitrary triangle mesh. All resulting tetrahedrons are assigned to volume constraints which ensure the conservation of the total volume. For the simulation of such a constraint impulses are computed and applied to the particles of the assigned tetrahedrons. The algorithm is easy to implement and ensures exact volume conservation in each simulation step.

Deformable body 1

Deformable body with strong springs (Mpeg)

Deformable body 2

Deformable body with weak springs (Mpeg)


Raphael Diziol, Daniel Bayer and Jan Bender, Simulating Almost Incompressible Deformable Objects, Virtual Reality Interactions and Physical Simulations (VRIPhys), Karlsruhe, November 5-6, 2009

PDF BibTex


Abstract

We present a new method for simulating almost incompressible deformable objects. A tetrahedral model is used to represent and restore the volume during the simulation. The new constraint computes impulses in the onering of each vertex of the tetrahedral model, in order to conserve the initial volume. With different parameters, the presented method can handle a large variety of different deformation behaviors, ranging from stiff to large deformations and even plastic deformations. The algorithm is easy to implement and reduces the volume error to less than 1% in most situations, even when large deformations are applied.

Armadillo

Armadillo (Mpeg)

Bar

Deformable bar (Mpeg)

Cube

Deformable cube (Mpeg)

Bar

Plastic deformation (Mpeg)

Cube

Twirl (Mpeg)


Jan Bender and Daniel Bayer, "Parallel simulation of inextensible cloth", Virtual Reality Interactions and Physical Simulations (VRIPhys), Grenoble, November 13-14, 2008

PDF BibTex


Abstract

This paper presents an efficient simulation method for parallel cloth simulation. The presented method uses an impulse-based approach for the simulation. Cloth simulation has many application areas like computer animation, computer games or virtual reality. Simulation methods often make the assumption that cloth is an elastic material. In this way the simulation can be performed very efficiently by using spring forces. These methods disregard the fact that many textiles cannot be stretched significantly. The simulation of inextensible textiles with methods based on spring forces leads to stiff differential equations which cause a loss of performance. In contrast to that, in this paper a method is presented that simulates cloth by using impulses. The mesh of a cloth model is subdivided into strips of constraints. The impulses for each strip can be computed in linear time. The strips that have no common particle are independent from each other and can be solved in parallel. The impulse-based method allows the realistic simulation of inextensible textiles in real-time.

Cloth 1

Bodies falling in a piece of cloth (DivX, Mpeg)

Cloth 2

Cloth simulation (DivX, Mpeg)