Developer(s) | id Software (John Carmack, John Cash, and Brian Hook) |
---|---|
Final release | 3.21
/ December 22, 2001 |
Repository | github.com/id-Software/Quake-2 |
Written in | C, Assembly (for software rendering & optimization) |
Platform | Windows, Mac OS 8, Linux, PowerPC Macintosh, Amiga, Nintendo 64, Dreamcast, Xbox, PlayStation 2 |
Predecessor | Quake engine |
Successor | id Tech 3, GoldSrc |
License | GNU GPL-2.0-or-later |
Website | www |
The Quake II engine is a game engine developed by id Software for use in their 1997 first-person shooter Quake II.[1] It is the successor to the Quake engine. Since its release, the Quake II engine has been licensed for use in several other games.[2]
One of the engine's most notable features was out-of-the-box support for hardware-accelerated graphics, specifically OpenGL, along with the traditional software renderer.[2] Another interesting feature was the subdivision of some of the components into dynamic-link libraries. This allowed both software and OpenGL renderers, which were selected by loading and unloading separate libraries. Libraries were also used for the game logic, with consequences including:
The level format, as with previous id Software engines, used binary space partitioning. The level environments were lit using lightmaps, a method in which light data for each surface is precalculated (this time, via a radiosity method) and stored as an image, which is then used to determine the lighting intensity each 3D model should receive, but not its direction.[5][6]
id Software released the source code on December 22, 2001, under the terms of the GNU General Public License v2.0 or later.[7][8]
Dynamic linking provided numerous advantages: [...] Full native speed for mods, no need to rely on QuakeC and Quake Vitual machine.
Dynamic linking provided numerous advantages: [...] More capabilities to mod makers, the entire game could be altered via game.dll.
We also had light bouncing—simulated radiosity—so every corner of the world had some lighting.
Contrary to Quake1, Quake2 used radiosity and colored light during the precalculation.