Matthias Müller received his PhD in atomistic simulation of dense polymer systems in 1999 from ETH Zürich. During his post-doc with the MIT Computer Graphics Group (1999-2001), he changed fields to macroscopic physically based simulations. He has published papers on particle-based water simulation and visualization, finite element-based soft bodies, cloth simulation, and fracture simulation. The main focus of his research are unconditionally stable, fast and controllable simulation techniques for the use in computer games. Most relevant to this talk, he is one of the founders of the field of position based simulation methods. In 2002, he co-founded the ETH-spin-off company NovodeX developing a physics library for games. The company was acquired in 2004 by AGEIA and in 2008 by Nvidia. He is currently the head of the physics research team at NVIDIA.
Title: Advances in Position Based Dynamics
Position Based Dynamics (PBD) is one of the most popular simulation methods used in games. In contrast to classical force or impulse based approaches, PBD computes the position changes in each simulation step directly, based on the solution of a non-linear, quasi-static problem. PBD is fast, stable and controllable which makes it well-suited for the use in interactive environments. It has not become as popular in other fields mainly because the resulting behavior is time step and iteration count dependent and non physical units are used.
At Nvidia we have recently expanded our activities into the field of robotics. In our most recent project we work on creating physically and visually accurate virtual environments to train robots. To this end, we are working on extending PBD to meet the new accuracy constraints while remaining as stable and simple as the original approach.
In the talk I will first introduce basic PBD. I will then explain its relation to backward Euler integration and how we used this insight to devise the extended version XPBD. Finally I will describe how traditional FEM can be formulated as a special constraint in XPBD and show a simple way to write a full fledged rigid body engine within the XPBD framework.