Tricks of the 3D Game Programming Gurus-Advanced 3D Graphics and Rasterization (Other Sams)
To be an ordinary programmer is one thing: You need only learn how to interact with the computer on its own terms, creating buttons and combo boxes that have no significance away from the screen. To be a game programmer--particularly one that writes games with environments that appear three-dimensional to their players--is something else entirely. Such work requires that the flat screen simulate the real world, complete with light, shading, texture, gravity, and momentum. It's all quite complicated.Tricks of the 3D Game Programming Gurushelps its readers make great progress in creating 3D worlds and the action that goes on in them.That this large, dense book manages to explain how to design and implement a 3D game while neither glossing over too many details nor swamping the reader with trivia is a credit to author André LaMothe. He opens by showing (and explaining) the C++ source code of a simple but full-fledged 3D spaceflight shooter game--a real boost to the reader's confidence. From there, he explains the complicated geometric concepts and mathematics that underlie realistic games (always with an eye toward software algorithms) and shows how to use the many APIs and libraries (including Microsoft DirectX 9.0) that make the world-builder's job easier. Make no mistake: Designing and building convincing games with 3D visuals and behaviors that convincingly approximate real-world physics is hard work. In this book, LaMothe helps you get it done and enjoy the process.--David WallTopics covered: How to design and build 3D worlds and the goings-on within them. Aside from mathematics and geometry, this book focuses on wireframe models, shading, rendering, and animation. Microsoft DirectX 9.0 gets special attention.