Part of a new series by Prima Tech examining various aspects of game design, this book covers Direct3D, the latest version of Microsoft's game programming libraries. Direct3D in fact includes support for 2D graphics, music, device handling (mouse/keyboard) as well as 3D graphics; all of these topics are covered except (Direct)Music. The book is quite long, at over 800 pages and assumes you are using Visual C++. Despite its length, it is an easy read as long as you don't mind the author's quite chatty, 'tekkie' style.
One of the book's strengths is in providing a number of entry points that cater for readers with different levels of experience. For example, an appendix introduces C programmers to C++, while 'Part two' provides a basic overview of Windows programming and COM, both being fundamental in the development of a game engine based upon Direct3D. The author explains difficult concepts well and takes care to make sure novices aren't left behind at any stage in the development of the book's game engine. The obvious drawback to this approach is that people with a reasonable level of experience may find themselves skipping large sections of text in search of new information.
My main criticism is that the book contains a number of mistakes, making me wonder whether it has been rushed through the final stages of production. While the majority of these mistakes are relatively benign, like code listings with formatting problems, there are a couple of more serious errors in one section, which I feel could confuse a beginner. My other minor criticism is that I had to make a change to the code for the 3D samples (supplied on the CD) to get it to run on both my laptop and desktop PC. It is a shame these problems are present, since they detract from what is otherwise a good, clear introduction to the subject.