Game Programming in C++ Book Description:
Program 3D Games in C++: The #1 Language at Top Game Studios
Worldwide
C++ remains the key language at many leading game development studios.
Since it’s used throughout their enormous code bases, studios use it to maintain
and improve their games, and look for it constantly when hiring new
developers. Game Programming in C++ is a practical, hands-on approach to
programming 3D video games in C++. Modeled on Sanjay Madhav’s game
programming courses at USC, it’s fun, easy, practical, hands-on, and complete.
Step by step, you’ll learn to use C++ in all facets of real-world game
programming, including 2D and 3D graphics, physics, AI, audio, user interfaces,
and much more. You’ll hone real-world skills through practical exercises, and
deepen your expertise through start-to-finish projects that grow in complexity as
you build your skills. Throughout, Madhav pays special attention to demystifying
the math that all professional game developers need to know.
Set up your C++ development tools quickly, and get started
Implement basic 2D graphics, game updates, vectors, and game physics
Build more intelligent games with widely used AI algorithms
Implement 3D graphics with OpenGL, shaders, matrices, and transformations
Integrate and mix audio, including 3D positional audio
Detect collisions of objects in a 3D environment
Efficiently respond to player input
Build user interfaces, including Head-Up Displays (HUDs)
Improve graphics quality with anisotropic filtering and deferred shading
Load and save levels and binary game data
Whether you’re a working developer or a student with prior knowledge of C++
and data structures, Game Programming in C++ will prepare you to solve real
problems with C++ in roles throughout the game development lifecycle. You’ll
master the language that top studios are hiring for—and that’s a proven route to
success.
CONTENTS
1 Game Programming Overview
2 Game Objects and 2D Graphics
3 Vectors and Basic Physics
4 Artificial Intelligence
5 OpenGL
6 3D Graphics
7 Audio
8 Input Systems
9 Cameras
10 Collision Detection
11 User Interfaces
12 Skeletal Animation
13 Intermediate Graphics
14 Level Files and Binary Data