Formulating the Idea


This section is smaller for this game because you'll be finishing the work on your own. Although I discuss some of the features of the game here, I don't describe all of them because you'll be defining some. I highly suggest that you still go through this exercise as you determine which features you will add to your game.

The basic premise of this last game is a go-kart racing game. The code for the book focuses on the graphics programming of the game (after all, this is a graphics programming book) but leaves out all the nongraphics elements. It is your challenge to finish the game in a fun and exciting way, possibly even throwing in some new tricks.

What features does the game require that we will implement in the next few chapters? One of the first things you do (later in this chapter) is use the user interface classes that are provided by the sample framework which ships with the latest DirectX SDK. Although you could have used them on earlier projects, they are more involved and they handle many corner cases that might not be required in your game. Because there isn't time to describe the inner workings of each, it was easier to build small custom classes earlier to gain the benefits of learning.

Another major change for this game is that you design it to run on the programmable pipeline using High-Level Shader Language (HLSL). Don't worry: you'll learn more about that in the next chapter.

You should get together a list of features that the game will have for your own reference. The following small list includes the features implemented in this last section, as well as some potential ideas for other features you can implement on your own:

  • A racing game using go-karts

  • Using DirectX SDK Sample Framework user interface classes

  • Graphics driven by the HLSL

  • Real-time level of detail for meshes

  • Rearview mirror

  • And some ideas that you could implement on your own:

    • Multiplayer code for more than one player

    • Artificial intelligence for computer players

    • Special effects such as sparks or smoke

    • Sound support

    • Joystick and wheel support

    • Weapons and power-ups

    • Whatever your imagination desires

Given that the final product for this section comes not entirely from this book but from some of your own hard work, it isn't entirely feasible to include a Unified Modeling Language (UML) diagram for the code this game uses. Instead, I skip this step, but I recommend that you take the time to do the design yourself for a high-quality implementation.



Beginning 3D Game Programming
Beginning 3D Game Programming
ISBN: 0672326612
EAN: 2147483647
Year: 2003
Pages: 191
Authors: Tom Miller

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net