A Platform-Agnostic Approach
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 more » 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.
* 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 « less
Learn the underlying skills and principles of software development-as you design and build your first games for Xbox 360, Windows, and Zune.Designed specifically for students with no computer science background, this curriculum teaches the fundamentals of C# programming and the XNA Game Studio framework. more » This is a print-on-demand text that provides curriculum for an introductory undergraduate computer science elective. Ancillaries for instructors are located on the Microsoft Faculty Connection. « less
From Novice to Professional
Would you like to create your own games, but never have the time to dig into the details of multimedia programming? Now you don’t have to! XNA makes it simple to create your own games, which will run on your PC and Xbox 360 console. Even if you don’t know how to program at all, Beginning XNA 2.0 Game more » Programming: From Novice to Professional will teach you the basics of C# 2005 programming along the way. Don’t get overwhelmed with details you don’t need to know— just learn what you need to start creating your own games right now!
The fast–paced introduction to XNA and the C# language provides professional developers a quick-start guide to creating a commercial product using XNA, as well as offering home enthusiasts or hobbyists everything they need to begin putting together games in their spare time. You’ll discover and understand all the key concepts required to create smooth, professional–looking results in a range of gaming genres. Every reader will come away with a firm foundation onto which they can build more advanced ideas.
WHAT YOU’LL LEARN
* Game Planning and Programming Basics
* 2-D Graphics, Audio, and Input Basics
* Creating Your First 2-D Game
* Improving Your First 2-D Game
* Basics of Game Networking
* Rock Rain Live!
* 3-D Game Programming Basics
* Rendering Pipeline, Shaders, and Effects
* Lights, Camera, Transformations!
* Generating a Terrain
* Skeletal Animation
* Creating a Third-Person Shooter Game
WHO THIS BOOK IS FOR
Anyone approaching XNA programming for the Xbox 360 for the first time « less