64-173 Seminar: Inside A Physics Engine
Computer simulation and deep-learning for gaming and robotics
| Room: | MIN-A Seminar Room 5.2 |
| Date: | Tuesday, 10:15 - 11:45 |
| Organizer: | Norman Hendrich |
Course Description
The combination of deep learning and efficient physics simulation is the key innvoation behind recent successes in robotics, including stable walking, running, and dancing of humanoid robots. The same algorithms are used for realistic looking object dynamics and animations in computer games. In the seminar, we will look at the fundamental object representations and core algorithms needed for physics simulation. We will also look at common game engines (e.g. Godot, Unity) and simulators focusing on realistic rigid-body and multi-body dynamics. Knowledge of basic linear algebra and a C/C++ or Python is reommended.
Seminar Schedule
- 15.04: course overview, game-engine basics (Norman)
- 22.04: introduction to physics simulation, Mujoco Demos (Norman)
- 29.04: Lovis König: Object Representation: Polygons, Meshes, Voxels,
Slides: pdf,
odp.
- 06.05: scenegraph, Mujoco XML (Norman)
- 13.05: pentecost holiday
- 20.05: Clemens Kmentt: Collision Detection Algorithms (GJK, EPA).
- 27.05: Alexander Luczak: Inverse Kinematics (Godot),
Slides: pdf.
- 03.06: Pascal Spethmann: Impulse-based Game Physics (Bullet, pybullet)
Slides: pdf.
pptx
- 10.06: Norman: Soft Contacts (Mujoco)
Room change on 10/June: Bu56b 05-713 (Haus der Informatik)
- 17.06: Melanie Michel: Water and Liquids Simulation (Godot)
- 24.06: Karim Sehili: Swarm Simulation (Godot)
- 01.07: Human Riyahi: Flexible and Deformable Objects
- 08.07: Fernando_Miguel Koloska: Parallel Simulation
- 15.07: tbd.
Seminar Topics
- Inverse Kinematics (Godot)
- Water Simulation (Godot)
- Swarm Simulation (Unity)
- Coordinate Transformations, including Rotations in 2D and 3D
- Forward and Inverse Kinematics
- Object Representation, Polygons, Meshes, Voxels
- Collision Detection Algorithms, GJK, EPA, etc.
- Convex Decomposition, CoACD, etc.
- Signed Distance Fields
- Maximal and Generalized Coordinates
- Classical Rigid-Body Algorithms (e.g. Open Dynamics Engine)
- Impulse-based Simulation (e.g. Bullet Engine)
- Mujoco
- Parallel Simulation (Mujoco JAX, BRAX, ...)
- Position based Dynamics
- Flexible and Deformable Objects
- Continuum Models
- Differentiable Physics
- Incremental Potential Contacts and Affine Body Dynamics (IPC)
Learning Objectives
- Acquire core concepts of physics simulation in games and for robotics
- Study key algorihtms in detail and learn how to explain them
- Develop academic presentation skills
- Engage in peer learning through knowledge exchange
Papers and Reference Materials / Reading Lists
Collision Detection (GJK,EPA)
- GJK paper (difficult),
- GJK Ausarbeitung,
- GJK Demo (1D and 2D),
- A Strange but Elegant Approach... (GJK Algorithm Video),
- LIBCCD (quality implementation of GJK and EPA),
- C-Space Visualization (2D robot arm)
- Gino van den Bergen, Proximity Queries
and Penetration Depth Computation on 3D Game Objects (EPA),
- Real-time Collision Detection
with Implicit Objects
- Collisions and Physics
Introduction to Rigid Body Simulation
- Introduction to Physically Based Modeling (Siggraph 95),
- Rigid Body Simulation I (unconstrained),
- Rigid Body Simulation II (with constraints),
- David Baraff, Rigid Body Simulation (Slides),
- Physics-Based Simulation Ebook (3/2026)
-
Brian Vincent Mirtich, Impulsebased Dynamic Simulation of Rigid Body Systems
(PhD thesis, 1996)
Soft, Deformable, Flexible Objects
Room change on 10/June: Bu56b 05-713 (Haus der Informatik)

