The very beginningAs you well know by now, any game developer that wants to have a future should know at least the basics of DirectX. Sure there are other options like OpenGL for graphics or the new OpenAL for audio, but at the present moment the industry standard is DirectX and so, that is what we are going to use. You’ll need a compiler that is capable of generating Win32 executables (this series will feature Visual C++ 6.0, but you can use any other compiler) and you will also need the DirectX SDK (we’ll use version 7.0 since it is the most current version of it). You can download or order the DirectX SDK at the Microsoft DirectX SDK homepage. Also I presume that you already know how to compile a normal Win32 program with your compiler and use external libraries. Since DirectX need a little bit of preparation before use let me describe the process if you’re using Visual C++. First go to the Tool menu, then Options, and choose the tab Directories. In the Show directories for combo box choose Include files and add a new directory. Specify the directory where you installed the DirectX SDK and the include directory (if you have installed the SDK to C:\DXSDK the path should be C:\DXSDK\include). After adding the directory move it to the top of the list so when the compiler searches for the DirectX files it will use those in the directory you installed to and not the one that came with the compiler (which contains older DirectX headers). Then select Library files in the Show directories for combo box and do the same thing as above but replacing \include with \lib. You are now set to use the DirectX SDK. You will still need to manually add the libraries to your project but we’ll take care of that in the next section. The first game we’ll develop will be a Pong clone. You can take many approaches to develop a game, the one that will be presented here is the one I like, but if you prefer working in another manner (like first code the wrappers and then design, etc) it’s your call. I stick with this one because I got used to it during my apprentice time. The approach I take to program any game is given below:
These are the steps I prefer to use to develop my games; if you have your own, fine stick with it. Also a note: the term test bed usually refers to using a pencil and paper, toys, and/or programs to test an idea. I use the term test bed as part of a feature or engine, like text output, scrolling functions, and the save/load mechanism. I prefer to develop these features in a of separate program and then integrate it with the game. This system is also known as the tier system, I call it test bed - the important thing is that even though names differ the concepts are the same. |
||||||||||||||||||||