From the Book - Second edition.
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 ; Catching and handling errors ; Pipelines, caches and optimization
3D math for games: Solving 3D problems in 2D ; Points and vectors ; Matrices ; Quarternions ; Comparison of rotational representations ; Other useful mathematical objects ; Hardware-accelerated SIMD math ; Random number generation.
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 camera and pausing the game ; Cheats ; Screenshots and movie capture ; In-game profiling ; In-game memory stats and leak detection.
Graphics, motion and sound. The rendering engine: Foundations of depth-buffered triangle rasterization ; The rendering pipeline ; Advanced lighting and global illumination ; Visual effects and overlays ; Further reading
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 ; Advanced physics features
Audio: The physics of sound ; The mathematics of sound ; The technology of sound ; Rendering audio in 3D ; Audio engine architecture ; Game-specific audio features.
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 gameplay foundation system ; Runtime object model architectures ; World chuck 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. Conclusion. You mean there's more?: Some engine systems we didn't cover ; Gameplay systems.
3. Fundamentals of software engineering for games
II. Low-level engine systems
5. Engine support systems
6. Resources and the file system
7. The game loop and real-time simulation
8. Human interface devices (HID)
9. Tools for debugging and development
12. Collision and rigid body dynamics
13. Introduction to gameplay systems
14. Runtime gameplay foundation systems
15. You mean there's more?