Tricks of the Windows Game Programming Gurus:Journey into the Abbys

All ITKnowledge Source Code Search Tips Advanced Search |

| Tricks of the Windows Game Programming Gurus by Andre LaMothe Sams, Macmillan Computer Publishing ISBN: 0672313618 Pub Date: 09/27/99

Search this book:

Previous | Table of Contents | Next

Today, DirectX is coming up on version 8.0 (this book covers 7.0), and it’s a killer API. True, you have to think a little differently—using COM (the Component Object Model), programming in Win32, and not having total control over the whole computer anymore—but that’s life. I don’t think that Geordi can take over the whole computer system on the Enterprise either, so if resource-sharing works on a Galaxy Class starship, it’s good enough for me.

With DirectX technology, you can create a virtual, DOS-like machine with a 4GB address space (or more) and linear memory, and you can program as if you’re in DOS (if that’s what you like). More importantly, now you can leverage every new piece of graphics and sound technology instantly. This is due to DirectX’s forward-looking design and technology. Anyway, that’s enough about DirectX; you’ll get the full treatment soon enough. Let’s get back to history…

First there was DOOM, which used software rasterization only. Take a look at Figure 1.1 to see a screen shot of Rex Blade, a DOOM-clone. The next generation of 3D games, like Quake I, Quake II, and Unreal, really were a quantum leap. Take a look at Figure 1.2 to see a screen shot of Unreal. This game and others like it are simply unbelievable. All of them contain software rasterizers along with hardware acceleration code to get the best of both worlds. And let me tell you, Unreal or Quake II running on a Pentium II 400MHz with Voodoo II acceleration is as sweet as it gets.

Figure 1.1 Rex Blade: The first generation in Doom technology.

Figure 1.2 It’s so good, it’s Unreal!

So where does this leave us? In a world were technology is so advanced that the sky is the limit. However, there’s always the next “big thing.” Even though games like Quake and Unreal can take years to make, I’m hoping that you’ll come up with something just as engaging!

The history lesson’s over. Let’s get to the core of the matter with design.

### Designing Games

One of the hardest things about writing video games is designing them. Sure, 3D mathematics is hard, but thinking of a fun game and a design to go along with it is just as difficult, in a manner of speaking, and definitely as important. Who cares if you have the latest volumetric photon traces if the game sucks?

Now, thinking up a game idea isn’t that hard. It’s the details, final implementation, and visual look that make the difference between the bargain bin and the cover of PC Gamer. So let’s outline some basic concepts and rules of thumb that have worked for me and paid for a Dodge Viper or two.

### Types of Games

These days, there are as many game types as political promises (those that are made, not kept), but you can bunch them into a handful of genres:

  DOOM-like first-person games—These games are full 3D, for the most part, and you view them from the character’s perspective. DOOM, Hexen, Quake, Unreal, Duke Nukem 3D, and Dark Forces are all good examples of this type of game. Technologically, they’re probably the most difficult to develop, and they require cutting-edge technology to be noticed.
  Sports games—Sports games can be either 2D or 3D, but these days more and more are 3D. In any case, the sport can be one-man or team play. The graphics in sports games have come a long way. Maybe they’re not as impressive as first-person games, but they’re catching up. However, the artificial intelligence in sports games is some of the most advanced of all the game genres.
  Fighting games—Fighting games are typically played by one or two players, and the action is viewed from the side or by a floating 3D camera. The game imagery can be 2D, 2.5D (multiple 2D bitmap images of 3D objects), or full 3D. Tekken for the Sony Playstation is the game that really made the genre for the home console market. Fighting games aren’t as popular on the PC, probably due to the interface problems with controllers and the two-player fun factor.
  Arcade/shoot’em-up/platform—These games are your typical Asteroids, Pac Man, and Jazz Jackrabbit type stuff. They’re basically old-school games that are primarily 2D, but they’re being redefined and remade into 3D worlds. However, the gameplay is relatively the same as it was in 2D.
  Mechanical simulations—These games encompass any kind of driving, flying, boating, racing, and tank-battle simulation, and any other kind that you can think of. For the most part, these are 3D and have always been (even though they didn’t look good until recently).
  Ecosystem simulations—This is really a new kind of game that has no real-world analog—other than the real world itself. Here I’m talking about Populous, SimCity, SimAnt, and so on. These games allow you, the player, to be a god of sorts and control an artificial system of some kind, whether it’s a city, a colony of ants, or a financial simulation like Gazzillonaire (very cool game, BTW).
  Strategy or war games—These games have splintered into a number of subgenres. But I’m not religious about it, so suffice it to say we’re talking about strategy, turn-based (sometimes), thinking types of games such as Warcraft, Diablo, Final Fantasy VII, and so on. Again, I’m being a little cavalier here since Diablo is real-time, but it still involves a great deal of strategy and thinking. On the other hand, Final Fantasy is turn-based and not real-time.
  Interactive stories—This category includes Myst-like games. Basically, these are games that are prerendered or on “tracks,” and you move through the game by figuring out puzzles. Usually, these games don’t allow free roaming and are like playing interactive books, for lack of a better definition. Moreover, these aren’t really “to-the-metal” game programs because 99 percent of them are written using Director or a Director-like tool. Boring, Jules.
  Retro games—This area of gaming has sprung up overnight. In a nutshell, there are people who want to play old games, but with more bells and whistles than the originals. For example, Atari has made about 1,000 versions of Tempest. Granted, they never sell, but you get the point. However, I have had a lot of luck remaking some of the old games like Dig Dug, Centipede, Frogger, and so on.
  Pure puzzle and board games—There’s not much to say here. These games can be 2D, 3D, prerendered, or whatever. Tetris, Monopoly, and Mahjong are a few games that fall into this category.

Previous | Table of Contents | Next

Copyright © Macmillan Computer Publishing, Inc.

Products | Contact Us | About Us | Privacy | Ad Info | Home
Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of EarthWeb is prohibited. Read EarthWeb's privacy statement.