Updates

Latest Tweet



What's New?

Check out for latest innovation, a computer based training video collection


Like this Page

.NET Game Programming with DirectX 9.0 Review by T. Hudson

Reconsider buying this

This book teaches some useful concepts and techniques when it comes to game programming. It is getting me started on Direct3D okay, which is why I bought the book. There are some serious problems, however.

The book (thank god) comes with a CD with working source code. This code will often not agree with the book. The book contains syntax errors. The author forgets to inform you of many variables and functions that need to be defined. He flips back and forth between VB6-style and VB.Net program flow mechanisms and commands, using Err.Raise, On Error Goto, MsgBox, and FunctionName = ReturnValue in one function, then Structured exception handling, MessageBox.Show, and Return ReturnValue in the next function. In the function I am looking at right now, a for/next loop is needed, but the for and next lines are simply omitted from the source in the book! The code doesn't appear even make sense until you open the source from the CD to see what is missing. He uses incorrect DirectX function, class and enumeration names (on the page open in front of me, he declares a texture object as a "Direct3DTexture8" rather than the correct "Texture"... I am beginning to wonder if all this code is not ported from VB6 and DirectX 8).

I copied one of the games (River Pla.Net) to my hard drive, and compiled and played it. It (intentially) runs at about 6 FPS, with the entire playing field scrolling one row of tiles per frame. It works, but it looks... bad. In five minutes I looked around, modified 15 lines of code, tops, and I had the game running with smooth scrolling and waaaay smoother controls. Why would the author not take the extra five minutes to make his game look 100% better?

I have to admit, though, that I am now capable of creating a Direct3D, tile-based game, which was my goal, which is why I would give the book 3 stars rather than one. A less experienced programmer, however, might not be able to fix the errors found in the code in the book. If you find any other book that suits your needs, I recommend swaying away from this one.