As the quality of games has improved, more attention has been given to all aspects of a game to increase the feeling of reality during gameplay and distinguish it from its competitors. Mathematics provides much of the groundwork for this improvement in realism. And a large part of this improvement is due to the addition of physical simulation. Creating such a simulation may appear to be a daunting task, but given the right background it is not too difficult, and can add a great deal of realism to animation systems, and interactions between avatars and the world.

This tutorial deepens the approach of the previous years' Essential Math for Games Programmers, by spending one day on general math topics, and one day focusing in on the topic of physical simulation. It, like the previous tutorials, provides a toolbox of techniques for programmers, with references and links for those looking for more information.

Topics for the various incarnations of this tutorial can be found below. Sample code libraries and examples are provided for certain talks.

Current Materials

Slides

The latest available versions of the slides for the math tutorials at GDC 2015 are as follows:

See below for further materials from past years that may be useful. The code samples in particular contain code for simple dynamics and collision.

Past Materials

Presentations for the math tutorials at GDC 2014 are as follows:

Presentations for the math tutorials (the physics presentations are available here) at GDC 2013 are as follows:

Presentations for the math and physics tutorials at GDC 2012 are as follows:

Presentations from the physics tutorial at GDC 2011 are as follows:

Presentations from the physics tutorial at GDC 2010 are as follows:

Presentations from the math and physics tutorials at GDC 2009 are as follows:

Fully updated versions of the slides and sample code used to present the tutorial at GDC 2008 are as follows:

Fully updated versions of the slides and sample code used to present the tutorial at GDC 2007 are as follows:

Fully updated versions of the slides and sample code used to present the tutorial at GDC 2006 are as follows:

For those slides in PowerPoint Show format, the original PowerPoint materials are also available upon request.

In past years this tutorial was more general, providing a toolbox of techniques for programmers interested in improving their 3D background. The focus of the course was to follow the rendering and dynamics pipelines and show how problems along the way can be solved and optimized using 3D mathematical concepts. The following PowerPoint Show files and PDFs have been collated from all six years of the tutorial and organized by subject. They provide background material for those who are interested in the basics of 3D math and programming. The original PowerPoint materials are also available upon request.