Game Programming in C++ : Creating 3D Games is a practical, hands-on approach to programming 3D video games in C++. 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. Modeled on tech guru Sanjay Madhav’s game programming courses at USC, it’s easy, fun, practical, hands-on, and complete.
Step by step, you’ll learn to use C++ in all facets of real-world game programming, including 3D and 2D graphics, physics, audio, AI, user interfaces, and much more. You’ll hone real-world skills through practical and real exercises, and deepen your expertise through start-to-finish projects that grow in complexity as you build your programmig skills. Throughout, Sanjay Madhav pays special attention to demystifying the mathematics that all professional game developers need to know.
- Set up your C++ development tools quickly, and get started
- Implement basic 2D graphics, vectors, game updates, and game physics
- Build more intelligent games with widely used AI algorithms
- Load and save levels and binary game data
- Implement 3D graphics with OpenGL, matrices, shaders, and transformations
- Integrate and mix audio, including 3D positional audio
- Efficiently respond to player input
- Build user interfaces, including Head-Up Displays (HUDs)
- Detect collisions of objects in a 3D environment
- Improve graphics quality with anisotropic filtering and deferred shading
Whether you are a working developer or a computer student with little 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 will master the language that top studios are hiring for — and that’s a proven route to success.