Front cover image for Game engine architecture

Game engine architecture

Explores 3D game engine architecture. This book covers software architecture principles in the context of game engine design, investigates the subsystems typically found in a real production game engine, surveys engine architectures from actual shipping games, and explores how the differences between game genres can affect engine design.
Print Book, English, cop. 2009
A K Peters, Natick, cop. 2009
XX, 860 p. : il
9781568814131, 1568814135
I Foundations Introduction Structure of a Typical Game Team What Is a Game? What Is a Game Engine? Engine Differences Across Genres Game Engine Survey Runtime Engine Architecture Tools and the Asset Pipeline Tools of the Trade Version Control Microsoft Visual Studio Profiling Tools Memory Leak and Corruption Detection Other Tools Fundamentals of Software Engineering for Games C++ Review and Best Practices Data, Code, and Memory in C/C++ Catching and Handling Errors 3D Math for Games Solving 3D Problems in 2D Points and Vectors Matrices Quaternions Comparison of Rotational Representations Other Useful Mathematical Objects Hardware-Accelerated SIMD Math Random Number Generation II Low-Level Engine Systems Engine Support Systems Subsystem Start-Up and Shut-Down Memory Management Containers Strings Engine Configuration Resources and the File System File System The Resource Manager The Game Loop and Real-Time Simulation The Rendering Loop The Game Loop Game Loop Architectural Styles Abstract Timelines Measuring and Dealing with Time Multiprocessor Game Loops Networked Multiplayer Game Loops Human Interface Devices (HID) Types of Human Interface Devices Interfacing with a HID Types of Inputs Types of Outputs Game Engine HID Systems Human Interface Devices in Practice Tools for Debugging and Development Logging and Tracing Debug Drawing Facilities In-Game Menus In-Game Console Debug Cameras and Pausing the Game Cheats Screen Shots and Movie Capture In-Game Profiling III Graphics and Motion The Rendering Engine Foundations of Depth-Buffered Triangle Rasterization The Rendering Pipeline Advanced Lighting and Global Illumination Visual Effects and Overlays Animation Systems Types of Character Animation Skeletons Poses Clips Skinning and Matrix Palette Generation Animation Blending Post-Processing Compression Techniques Animation System Architecture The Animation Pipeline Action State Machines Animation Controllers Collision and Rigid Body Dynamics Do You Want Physics in Your Game? Collision/Physics Middleware The Collision Detection System Rigid Body Dynamics Integrating a Physics Engine into Your Game A Look Ahead: Advanced Physics Features IV Gameplay Introduction to Gameplay Systems Anatomy of a Game World Implementing Dynamic Elements: Game Objects Data-Driven Game Engines The Game World Editor Runtime Gameplay Foundation Systems Components of the GameplayFoundation System Runtime Object Model Architectures World Chunk Data Formats Loading and Streaming Game Worlds Object References and World Queries Updating Game Objects in Real Time Events and Message-Passing Scripting High-Level Game Flow V Conclusion You Mean There's More? Some Engine Systems We Didn't Cover Gameplay Systems