The award winning piece of back-end code that powers games like Unreal, Nerf: Arena Blast, Dr. Brain, Star Trek: Deep Space Nine - The Fallen, and Wheel of Time.

The Unreal Engine seems to have been developed primarily for Glide users, and always supports the lowest common denominator so far as hardware acceleration is concerned. One of the side effects of this is that texture maps can only be 256 colors, and cannot measure more than 256 pixels up or across. I think it's justified because I just happen to have been too cheap with my box, and bought a Voodoo3 3000 PCI card, which happens to work very nicely with Unreal Engine based games. Unfortunately, the card doesn't perform quite so well with games such as Quake 3 Arena, because the OpenGL support for Voodoo boards seems as though it were an afterthought, which it was.

The engine is responsible for opening and rendering packages used in playing the game. The packages are all saved with the same format, but different extensions. The boys at Epic offer this advice to those who would like to comprehend the package format ( http://unreal.epicgames.com/Packages.htm ): "Abandon all hope ye who try to parse this file format." I conclude that the format of Unreal Packages is quite complex.

The only real difference between the packages is said to be the extension, which changes the way Unreal handles the package. The package extensions are:
  • .u for system files; these are generally binary packages that describe actors in the game. .u files are responsible for handling the bots, drawing your weapon onscreen, and actually even being the weapon you hold in your hand.
  • .unr is probably the most common extension used; it refers to actual game levels, where you and any number of human opponents or bots can fight it out to the death.
  • .umx is for packages containing Music selections. Ambient music can sometimes make or break a level. Everyone likes to see attention to the details, right?
  • .uax is like music, but generally contains sound clips no more than 2 or 3 seconds. Don't ever try to substitute SFX for Music in your level. It sounds repetitive.
  • .utx is the extension for a file containing texture data. Textures are mapped onto the surface of polys in the game world, and they're what make a rock face look like a rock face as opposed to a grey sheet. Everybody loves eye candy.
There might even be some that I'm missing. But I've just described all the popular ones. Packages are not compressed, and can contain any number of objects. A texture package could theoretically contain over 100,000 textures, but this would be a bad idea because the package would be gargantuan and require lots and lots of memory to open in under a few weeks. Most packages don't have more than 50 or 60 objects in them, with the exception of the .u packages. .u packages can (and often do) have over 300 objects.

I like the Unreal Engine because it plays nicely with my Voodoo accelerator, but I'll soon be buying a nice GeForce 2 card to replace it. Then the Quake Engine will perform nicely as well.

See game engine and gaming engine.