Components of a game
Basically a game has the following components
- Initialization
- Standar operations, variable creation
- x=0;
- game_status = INIT;
- …
- (Notice you will use C++)
- Enter game loop
- The process enters the loop
- while(game_status != game_over)…
- Retrieve player input
- Catch keystrokes and input devices signaling
- …
- Perform AI and game logic
- AI = Artificial intelligence (It’s serious, even pacman has AI)
- Physics = Do you remember parabolic shoot formula?
- Math = 2D & 3D matrix
- Calculate images = More, and more math,
- Create 3D objects = Load 3D templates created on 3Dstudio, Truespace, Maya, blender(free!)
- Render next frame
- Is the new image read?, Render..
- Copy from memory to screen
- Synchronize display
- How many frames will you render in a minute? Usually 30fps
- Put a delay between rendering scenes
- Loop
- Back to the beginning
- Let’s start again
- Shutdown
- Release resources
- That’s all folks
Some advice:
Are you a pre-OOP developer? Great! Then you know how things works without objects, but don’t leave far away, this is a game, not a business application.
Don’t use tiers, properties, helper classes, etc. you really need the minimal amount of code. Just code C++.
(Actually it is possible to use C#, but I really prefer C++ and fight the memory, pointers and others)
Please, get a good DirectX tutorial and reference and use the last development tools.
You don’t need VStudio, just a C++ compiler, but if your games are Windows based then use a Microsoft tool like VStudio.NET 2005
If you work for the ‘empire’ use tool for the ‘empire’ y if you work for the rebellion use a X-Wing