3rd Edition

Game Engine Architecture, Third Edition

By Jason Gregory Copyright 2019
    1240 Pages 128 Color & 352 B/W Illustrations
    by A K Peters/CRC Press

    1240 Pages 128 Color & 352 B/W Illustrations
    by A K Peters/CRC Press

    In this new and improved third edition of the highly popular Game Engine Architecture, Jason Gregory draws on his nearly two decades of experience at Midway, Electronic Arts and Naughty Dog to present both the theory and practice of game engine software development. In this book, the broad range of technologies and techniques used by AAA game studios are each explained in detail, and their roles within a real industrial-strength game engine are illustrated.

    New to the Third Edition

    This third edition offers the same comprehensive coverage of game engine architecture provided by previous editions, along with updated coverage of:

    • computer and CPU hardware and memory caches,
    • compiler optimizations,
    • C++ language standardization,
    • the IEEE-754 floating-point representation,
    • 2D user interfaces,
    • plus an entirely new chapter on hardware parallelism and concurrent programming.

    This book is intended to serve as an introductory text, but it also offers the experienced game programmer a useful perspective on aspects of game development technology with which they may not have deep experience. As always, copious references and citations are provided in this edition, making it an excellent jumping off point for those who wish to dig deeper into any particular aspect of the game development process.


    Key Features

    • Covers both the theory and practice of game engine software development
    • Examples are grounded in specific technologies, but discussion extends beyond any particular engine or API.
    • Includes all mathematical background needed.
    • Comprehensive text for beginners and also has content for senior engineers.

    Section I Foundations

    Chapter 1 Introduction

    Chapter 2 Tools of the Trade

    Chapter 3 Fundamentals of Software Engineering for Games

    Chapter 4 Parallelism and Concurrent Programming

    Chapter 5 3D Math for Games

    Section II Low-Level Engine Systems

    Chapter 6 Engine Support Systems

    Chapter 7 Resources and the File System

    Chapter 8 The Game Loop and Real-Time Simulation

    Chapter 9 Human Interface Devices

    Chapter 10 Tools for Debugging and Development

    Section III Graphics, Motion and Sound

    Chapter 11 The Rendering Engine

    Chapter 12 Animation Systems

    Chapter 13 Collision and Rigid Body Dynamics

    Chapter 14 Audio

    Chapter 15 Introduction to Gameplay Systems

    Chapter 16 Runtime Gameplay Foundation Systems

    Section V Conclusion

    Chapter 17 You Mean There’s More?


    Jason Gregory has worked as a software engineer in the games industry since March 1999 and as a professional software engineer since 1994. He got his start in game programming at Midway Home Entertainment in San Diego, where he worked on Hydro Thunder 2 and Offroad Thunder, and wrote the Playstation 2/Xbox animation system for Freaky Flyers and Crank the Weasel. In 2003, Jason moved to Electronic Arts Los Angeles, where he worked on engine and gameplay technology for Medal of Honor: Pacific Assault and served as a lead engineer on the Medal of Honor: Airborne project. Jason is currently a Lead Programmer at Naughty Dog Inc., where he and his colleagues are currently working on The Last of Us: Part II for Playstation 4. He also developed engine and gameplay software for every game in the Uncharted series, and The Last of Us on PS3 and PS4, and has also taught courses in game technology at the University of Southern California.