Quote:Original post by mnansgarQuote:Original post by mumpo
I happen to own a copy of Tricks of the Windows Game Programming Gurus, and I can tell you for a fact that its code is incompatible with modern compilers and versions of DirectX. It's not so far off that you couldn't tweak the code to get it working, but it would be a pain to do so. ... Just stay away from the Tricks books.
It isn't a "pain" to tweak the code; with a single line, you can just tell your DX to use the old interfaces. Lamothe's books aren't about using the absolute latest and greatest 3D-accelerated technology, but he covers the fundamentals of computer graphics and game programming. He uses an old DX interface called DirectDraw which has been discontinued by Microsoft, but it is a great way to learn 2D graphics since you get direct access to the screen. In fact, DDraw is very similar to virtually all 2D graphics libraries out there.
So, you should look at your motivation for learning game programming. If you want to only learn the latest and greatest technologies, don't go with the Tricks series. If you want to learn how computer graphics and game programming works at a rather low level, the Tricks series is probably a good choice (if you don't mind sometimes verbose explanations). If your goal is just to quickly
learn how to make games, the Tricks series probably isn't the way to go.
Well my ultimate goal is the achieve the ability to program games with the latest and greatest technologies. However, my mentality towards this is to start simple and small, learn the fundamentals of game programming, experience firsthand how to program a game while inclining myself towards the technology that is most relevant to what is practical in modern-day game programming. Whats the point in learning technologies and techniques that aren't used anymore in the industry? I make an exception for 2D games because I look at the 2nd dimension as my training ground, and the 3rd dimension as the beginning of my journey into the abyss.
So I first want to learn about to apply the C++ language to games, to learn how to code a fully functional game, that takes input, draws graphics, has A.I. (no matter how dumb it is), incorporates game programming fundamentals into the code such as the game loop, game states, using an API, etc.
Once I have that down, then i'll move onto 3D. So i'm in no rush. I just want to gain a fundamental understanding of what i'm doing, and then gradually increase the complexity of the games I make.