Game Programming with DirectX 9
This e-learning project provides an introductory level material aimed to anyone with C++ programming skills who is interested in Game Programming with DirectX. Fundamental knowledge of Linear Algebra is also required to understand the manipulation of vectors.
This project comes with the online documentation and the downloadable source code. The documentation is available in HTML format and the source code in .zip archive attached to the tutorials. Inside the zip archive you will also find the executable file, so you can run the example application without compiling it.
If you have been already looking around in books written about game development with DirectX, you could put your attention to the fact that many of them use so called game engine, which is nothing else than a library of classes written to simplify certain development tasks. As much as game engine might spead-up the process of writing a game, it will definitely fail to spead-up your understanding of DirectX especially if you have no experience with it. Therefore we have decided not to use any game engine libraries and write our code from scratch with pure DirectX and native C++. We believe that this is a much more efficient way to learn DirectX.
The source code of this project does not represent the "best practices" and does not implement exception handling. This is done in attempt to keep the examples as clear and short as possible.
Experienced programmers, who are aware of the better ways to do the same, are encouraged to submit their feedback, articles and examples.
Please read tutorials in the order listed bellow.
Project documentation
Development Environment: C++ and DirectX SDK (June 2006)
Creating a simple Windows application
Creating a DirectX device
DirectX build-in primitives: drawing the box
Simple DirectX animation: moving the box up and down
Box navigation, viewport and HUD
Shooting fireballs
Generating asteroids
Collision detection
Color, material and light
Adding the "Game Menu"