skip to main content
10.5555/1231894.1231896acmotherconferencesArticle/Chapter ViewAbstractPublication PagesieConference Proceedingsconference-collections
Article

Multi-threaded game engine design

Published:04 December 2006Publication History

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.

References

  1. Andrews, J. Threading Basics for Games. http://www.intel.com/cd/ids/developer/asmona/eng/dc/threading/221160.htm 2005Google ScholarGoogle Scholar
  2. Breshears, C., Hoeflinger, J., Peterson, P., and Kerly, P. Developing Platform Consistent Multithreaded Applications: Memory Management http://www.intel.com/cd/ids/developer/asmona/eng/53797.htm 2003Google ScholarGoogle Scholar
  3. Coday, A., Magro, B., Breshears, C., Gabb, H., Kakulavarapu, P., Shah, S., and Tokinkere, V. Developing Platform Consistent Multithreaded Applications: Application Threading http://www.intel.com/cd/ids/developer/asmona/eng/53797.htm 2003Google ScholarGoogle Scholar
  4. ESA, Essential Facts About the Computer and Video Game Industry. http://www.theesa.com/files/2005EssentialFacts.pdf 2005Google ScholarGoogle Scholar
  5. Gabb, H., and Lake, A. Threading 3D Game Engine Basics. http://www.gamasutra.com/features/20051117/gabb_01.shtml 2005Google ScholarGoogle Scholar
  6. Haab, G., Gabb, H., Kakulavarapu, P., Shah, S., and Tokinkere, V. (2003) Developing Platform Consistent Multithreaded Applications: Synchronization. http://www.intel.com/ed/ids/developer/asmona/eng/53797.htm 2003Google ScholarGoogle Scholar
  7. IEAA, Gameplay Australia 2005. Center for Media Research and Education, Bond University, W.A. 2005Google ScholarGoogle Scholar
  8. Llopis, N., Introduction to Game Development, Chapter 3: Game Architecture. Charles River Media, Massachusetts, 2005, 267--296Google ScholarGoogle Scholar
  9. Prensky, M. True Believers: Digital Game-Based Learning in the Military. http://www.learningcircuits.org/2001/feb2001/prensky.html 2001Google ScholarGoogle Scholar
  10. Sarmiento, S., Real World Case Studies: Threading Games for High Performance on Intel Processors http://www.intel.com/ed/ids/developer/asmona/eng/dc/threading/implementation/204081.htm 2005Google ScholarGoogle Scholar
  11. Sutter, H. The Free Lunch is Over: A Fundamental Turn Toward Concurrency in Software. Dr. Dobb's Journal 30(3) March 2005Google ScholarGoogle Scholar

Index Terms

  1. Multi-threaded game engine design

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Other conferences
      IE '06: Proceedings of the 3rd Australasian conference on Interactive entertainment
      December 2006
      125 pages
      ISBN:869059025

      Publisher

      Murdoch University

      Murdoch, Australia

      Publication History

      • Published: 4 December 2006

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      IE '06 Paper Acceptance Rate17of55submissions,31%Overall Acceptance Rate64of148submissions,43%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader