This eBook includes the following formats, accessible from your Account page after purchase:
EPUB The open industry format known for its reflowable content and usability on supported mobile devices.
MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDF The popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
Also available in other formats.
Register your product to gain access to bonus material or receive a coupon.
You can program games in many languages, but C++ remains the key language used by many leading development studios. Since it’s the language used in their enormous code bases, it’s the language they need to maintain and improve their games, and look for most often when hiring new developers. Game Programming in C++ is today’s practical, hands-on approach to programming 3D video games in C++. Drawing on the author’s pioneering experience teaching game development at USC, it guides you through all key concepts hands-on, and helps you deepen your expertise through several start-to-finish, in-depth game projects.
Author Sanjay Madhav introduces core concepts one at a time, in an easy-to-digest fashion, paying special attention to the math that professional game developers need to know. Step by step, you’ll become increasingly comfortable with real-world C++ game development, and learn how to use C++ in all facets of game programming, including graphics, physics, AI, audio, camera systems, animations, and more.
Part I. Foundations
1. C++ Refresher
2. Game Programming Overview
3. Graphics Fundamentals
4. Basic Motion and Physics Using Vectors
5. Project: Asteroids in 2D
Part II. Into the Third Dimension
6. Input and Event-Based Systems
8. 3D Graphics
9. Project: Asteroids in 3D Sound
Part III. Adding Complexity
10. Artificial Intelligence Agents and State-based Behavior
11. User Interfaces
12. Project: Tower Defense
Part IV. Full 3D Movement
14. Collision Detection
15. Project: 3D Space Racer Projection and Camera
Part V. Intermediate Topics
16. Intermediate Graphics Techniques
18. Networked Games
19. Project: Third-Person Platformer
A. Useful Tools for Game Programmers
B. Game Framework Odds and Ends