GDC is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

View, browse and sort the ever-growing list of GDC sessions by time, pass type, topic, and format. With GDC Session Scheduler, you can build your schedule in advance and access it during the show via export or with the GDC Mobile App, once live.

If you've registered for GDC, you can use the same login credentials for your Session Scheduler account. Adding a session to your schedule does not guarantee you a seat. Sessions do fill up, so please arrive early to sessions that you would like to attend.

Math In Game Development Summit: Improving an Iterative Physics Solver Using a Direct Method

Maciej Mizerski (Technical Director Physics SImulation, Roblox)

Location: Room 2006, West Hall

Date: Tuesday, March 17

Time: 10:50am - 11:50am

Pass Type: All Access Pass, Core+Summits Pass, Summits Pass - Get your pass now!

Topic: Programming

Format: Session

Vault Recording: TBD

Audience Level: Intermediate

As the content on Roblox is user generated, the physics engine is required to handle much more variety of interactions than other engines. Roblox doesn't have the luxury of using standard methods of fixing physics engine failures by tweaking the simulated models, their masses, inertias, removing over-constraints or using gameplay tricks to hide the issues. The requirement is stability at all costs. This session will describe how to use a direct matrix solver based on LDL matrix decomposition in tandem with a PGS solver (a.k.a. Sequential Impulse solver) to improve the stability of degenerate systems of constraints and rigid bodies.


New ideas in the field of game physics simulation are presented. It is explained how degenerate mechanical systems are expressed in terms of constraint matrices and why iterative solutions of those systems is unstable. A solution to this problem is proposed.

Intended Audience

The talk is directed at physics and rendering programmers. Understanding of game physics simulation or basics of numerical programming is required.