Book description
Game Programming Algorithms and Techniques is a detailed overview of many of the important algorithms and techniques used in video game programming today. Designed for programmers who are familiar with object-oriented programming and basic data structures, this book focuses on practical concepts that see actual use in the game industry.
Sanjay Madhav takes a unique platform- and framework-agnostic approach that will help develop virtually any game, in any genre, with any language or framework. He presents the fundamental techniques for working with 2D and 3D graphics, physics, artificial intelligence, cameras, and much more.
Each concept is illuminated with pseudocode that will be intuitive to any C#, Java, or C++ programmer, and has been refined and proven in Madhav’s game programming courses at the University of Southern California. Review questions after each chapter help solidify the most important concepts before moving on.
Madhav concludes with a detailed analysis of two complete games: a 2D iOS side-scroller (written in Objective-Cusing cocos2d) and a 3D PC/Mac/Linux tower defense game (written in C# using XNA/ MonoGame). These games illustrate many of the algorithms and techniques covered in the earlier chapters, and the full source code is available at gamealgorithms.net.
Coverage includes
Game time management, speed control, and ensuring consistency on diverse hardware
Essential 2D graphics techniques for modern mobile gaming
Vectors, matrices, and linear algebra for 3D games
3D graphics including coordinate spaces, lighting and shading, z-buffering, and quaternions
Handling today’s wide array of digital and analog inputs
Sound systems including sound events, 3D audio, and digital signal processing
Fundamentals of game physics, including collision detection and numeric integration
Cameras: first-person, follow, spline, and more
Artificial intelligence: pathfinding, state-based behaviors, and strategy/planning
User interfaces including menu systems and heads-up displays
Scripting and text-based data files: when, how, and where to use them
Basics of networked games including protocols and network topology
Table of contents
- About This eBook
- Title Page
- Copyright Page
- Dedication Page
- Contents
- Acknowledgments
- About the Author
- Preface
- Chapter 1. Game Programming Overview
- Chapter 2. 2D Graphics
- Chapter 3. Linear Algebra for Games
- Chapter 4. 3D Graphics
- Chapter 5. Input
- Chapter 6. Sound
- Chapter 7. Physics
- Chapter 8. Cameras
- Chapter 9. Artificial Intelligence
- Chapter 10. User Interfaces
- Chapter 11. Scripting Languages and Data Formats
- Chapter 12. Networked Games
- Chapter 13. Sample Game: Side-Scroller for iOS
- Chapter 14. Sample Game: Tower Defense for PC/Mac
-
Appendix A. Answers to Review Questions
- Chapter 1: Game Programming Overview
- Chapter 2: 2D Graphics
- Chapter 3: Linear Algebra for Games
- Chapter 4: 3D Graphics
- Chapter 5: Input
- Chapter 6: Sound
- Chapter 7: Physics
- Chapter 8: Cameras
- Chapter 9: Artificial Intelligence
- Chapter 10: User Interfaces
- Chapter 11: Scripting Languages and Data Formats
- Chapter 12: Networked Games
- Appendix B. Useful Tools for Programmers
- Index
Product information
- Title: Game Programming Algorithms and Techniques: A Platform-Agnostic Approach
- Author(s):
- Release date: December 2013
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780133463200
You might also like
book
Game Programming in C++: Creating 3D Games, First Edition
You can program games in many languages, but C++ remains the key language used by many …
book
Beginning C++ Game Programming - Second Edition
Get to grips with programming techniques and game development using C++ libraries and Visual Studio 2019 …
book
Introduction to Video Game Engine Development: Learn to Design, Implement, and Use a Cross-Platform 2D Game Engine
Start your video game development journey by learning how to build a 2D game engine from …
book
Physics for Game Developers, 2nd Edition
If you want to enrich your game’s experience with physics-based realism, the expanded edition of this …