Overview: |
From the dawn of videogames to the present, most game architectures have gravitated towards a relatively small set of choices for their fundamental essence the game loop. The game loop is the highest-level subsystem that keeps the game running from start to finish. However, game loops contain several nuances, from design to timing, that can fundamentally impact the architecture of the entire codebase. This session offers an analysis of the current single-threaded game loop architectures, and then proceeds to cover how the architectures can be expanded to successfully transition into a Next-Generation multi-CPU hardware environment. With a focus on maximizing game performance, the analysis covers the general loop layout, variances based on timing requirements, and architectural (and performance) limitations that each variance imposes. In addition, the session digresses into the notion of time, including methods of measuring and profiling loops, and how to extend the timing concepts for multi-threaded designs.
|