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 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
Big congrats to Sanjay for putting this book together. It covers a wide breadth of topics that one would need for game development. Sanjay explains dense topics well and gives more reading material when something requires further explanation. Overall, I liked it and would highly recommend it to anyone trying to get a good grasp of game development.
The book can be considered as an introduction to game dev concepts/building blocks . The book is a mixture of common sense (if you did some basic game dev before) and more sophisticated concepts/advanced/detailed . Overall the book is absolutely worth the read.