Quake III
The Quake III engine (1999) was developed by ID Software and is used in many games. The first game that used the engine was Quake III Arena, released in 1999. In its heyday, it competed with the Unreal engine, although both engines were widely licensed.
The Quake III engine is a substantial improvement from the Quake engine and Quake II engines. Although the Quake III engine was derived from the Quake II engine, a large portion of code is new or re-written. It was succeeded by the Doom 3 engine, which was derived from the Quake III engine, but has none of the original code.
At QuakeCon 2005, John Carmack announced that the Quake III source code would be released under the GPL, and it was released on August 19, 2005. The code can be downloaded from id's ftp site.
Contents |
Engine features
The Quake III engine loads 3D models in the MD3 format. The format used vertex movements (sometimes called per-vertex animation) as opposed to skeletal animation in order to store animation. The animation features in the MD3 format are superior to those in Quake II's MD2 format because the animator is able to have numbers of key frames per second be lower and higher than 10 key frames per second. This allows for more complex animations that are less "shaky" than the models found in Quake II.
Another important feature about the MD3 format is that models are broken up into three different parts which are anchored to each other. Typically, this is used to separate the head, torso and legs so that each part can move independently for sake of procedural animation. Each part of the model has its own set of textures.
The character models are lit and shaded using gouraud shading while the levels (stored in the BSP format) are lit either with lightmaps or gouraud shading depending on the user's preference. The engine is able to take colored lights from the lightgrid and apply them to the models, resulting in a lighting quality that was, for its time, very advanced.
The engine is capable of three different kinds of shadows. One just places a circle with faded edges at the characters' feet, while the other two modes project an accurate polygonal shadow across the floor. The difference between the latter two modes is one's reliance on opaque, solid black shadows while the other mode attempts (with mixed success) to project depth-pass stencil shadow volume shadows in a medium-transparent black.
Other features included a high-level shader language and a method for rendering fog.
In the GPLed version of the source code, most of the code dealing with the MD4 skeletal animation files was missing. It is presumed that id simply never finished the format, although almost all licensees derived their own skeletal animation systems from what was present. Ritual Entertainment did this for use in the game, Heavy Metal: F.A.K.K.², the SDK to which formed the basis of MD4 support completed by someone who used the pseudonym Gongo. (More information about the file format can be found at his site)
Uses of the engine
Projects initialized since source code was made GPL
- Quake3Delphi - Porting Quake 3 to Delphi.
- ioquake3 - A project to remove bugs, clean up source code and to add more advanced graphical and audio features via SDL and OpenAL, and to act as a clean base package to build other projects on.
- Justin Thyme's CleanQ3 - A project to provide a clean, bug-free code base for other programmers to build off of.
- Gongo's MD4 Integration - A project to better support the MD4 file format within the Quake III engine.
- Quake 3 SDL Port - A port of Quake III to the SDL graphics and platform library for better portability.
- Quake 3 Arena CE - A port of Quake III Arena to the Pocket PC.
- OpenArena - A project to create free content under the GPL that can be used by anyone to play Quake III with the GPLed source code.
- Tremulous - An open-source sci-fi computer game built upon the ioquake3 source code.
- XreaL - Adding many advanced graphical features.
- Evolution Q3 - Combines ioquake3 features with the graphical niceness of XreaL into one package.
- Trepidation - An open source first person shooter based on the ioq3 engine.
- Quake III - Cell Shading - Adding Cell-shading capabilities.
Proprietary game uses
Games using the Quake III Arena engine
- Quake III Arena (1999) — id Software
- Heavy Metal: F.A.K.K.² (2000) — Ritual Entertainment
- Star Trek: Voyager Elite Force (2000) — Raven Software
- American McGee's Alice (2000) — Rogue Entertainment
- The World is Not Enough — Electronic Arts Los Angeles(2000; cancelled)
- This was to be a PS2 and PC version of the PlayStation and N64 game; it was cancelled and became Agent Under Fire — Electronic Arts Los Angeles
- Medal of Honor: Allied Assault (2002) — 2015 inc.
- Medal of Honor: Allied Assault - Spearhead (2003) — Electronic Arts Los Angeles
- Medal of Honor: Allied Assault - Breakthrough (2003) — Electronic Arts Los Angeles
Games using the Quake III: Team Arena engine
- Quake III: Team Arena (2000) — id Software
- Return to Castle Wolfenstein (2001) — Gray Matter Interactive
- Wolfenstein: Enemy Territory (2003) — Splash Damage
- Soldier of Fortune II: Double Helix (2002) — Raven Software
- Star Wars Jedi Knight II: Jedi Outcast (2002) — Raven Software
- Star Wars Jedi Knight: Jedi Academy (2003) — Raven Software
- Star Trek: Elite Force II (2003) — Ritual Entertainment
- Call of Duty (2003) — Infinity Ward
- Call of Duty: United Offensive (2004) — Gray Matter Interactive
Games with the Q3 engine are recognized by a console appearing before the game runs. Then, when you bring out the in-game console (using the ~ key), the font is in Q3 font (whereas in Q1 and Q2 engine games, the font is more of a classical console type font). With the Doom engine, the font is the Doom menu font (red, uppercase). The Q3 font is also used in the Doom 3 engine. With some of the games using the Q3 engine, there are two separate executable files, one for single player and one for multiplayer, with the notable exception of Medal of Honor: Allied Assault.
| | This page uses content from Wikipedia. The original article was at Quake III engine. The list of authors can be seen in the page history. As with CGWiki, the text of Wikipedia is available under the GNU Free Documentation License. |
- This page was last modified 06:42, 17 June 2007.
- This page has been accessed 3,936 times.
- Content is available under GNU Free Documentation License.
- About CGWiki
- Disclaimers

