Multi-threaded game engine design

  • Authors:
  • James Tulip;James Bekkema;Keith Nesbitt

  • Affiliations:
  • Charles Sturt University, Bathurst;Charles Sturt University, Bathurst;Charles Sturt University, Bathurst

  • Venue:
  • Proceedings of the 3rd Australasian conference on Interactive entertainment
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Game engines are specialized middleware which facilitate rapid game development. Until now they have been highly optimized to extract maximum performance from single processor hardware. In the last couple of years improvements in single processor hardware have approached physical limits and performance gains have slowed to become incremental. As a consequence, improvements in game engine performance have also become incremental. Currently, hardware manufacturers are shifting to dual and multi-core processor architectures, and the latest game consoles also feature multiple processors. This presents a challenge to game engine developers because of the unfamiliarity and complexity of concurrent programming. The next generation of game engines must address the issues of concurrency if they are to take advantage of the new hardware. This paper discusses the issues, approaches, and tradeoffs that need to be considered in the design of a multi-threaded game engine.