You've been logged out of GDC Vault since the maximum users allowed for this account has been reached. To access Members Only content on GDC Vault, please log out of GDC Vault from the computer which last accessed this account.

Click here to find out about GDC Vault Membership options for more users.


Session Name:

High Performance Physics Solver Design for Next Generation Consoles


This presentation guides developers though the unique code and data design considerations required to build high-performance game engine components for the next generation console hardware. Using examples from specific physics solvers such as fluids, cloth, rigid and articulated bodies, it highlights the necessary steps for designing and implementing efficient code that makes full use of the hardware's impressive potential.

The unique design of next generation console hardware requires developers to rethink the structure of their code and the flow of data through the system to take full advantage of the system's impressive computational potential. This course will take you through a series of examples of next-generation physics solvers, including fluids, cloth simulation, rigid and articulated bodies. It will cover in detail considerations involved in picking appropriate algorithms that map well to the hardware, and techniques for structuring the code to allow for efficient multithreading and splitting computation among multiple processing units. Additionally, it will explain how to go about optimizing inner-loops, making use of SIMD, localizing memory access for better performance, and efficiently transfering the resulting data to the GPU for rendering. While the examples presented are all drawn from the physics simulation arena, the lessons to be learned are relevant for any component of a high-performance game engine.

Did you know free users get access to 30% of content from the last 2 years?

Get your team full access to the most up to date GDC content

  • GDC 2006
  • Vangelis Kokkevis
  • Google
  • free content
  • Programming
  • Programming