Quake II engine
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]
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 |
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:
- Since they were compiled for specific platforms, instead of an interpreter, they could run faster than Quake's solution, which was to run the game logic (QuakeC) in a limited interpreter.[3]
- id could release the source code to allow modifications while keeping the remainder of the engine proprietary.[4]
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]
Games using the Quake II engine
Games using a proprietary license
Year | Title | Developer |
---|---|---|
1997 | Quake II | id Software |
1998 | Quake II Mission Pack: The Reckoning | Xatrix Entertainment |
Quake II Mission Pack: Ground Zero | Rogue Entertainment | |
Heretic II | Raven Software | |
SiN | Ritual Entertainment | |
1999 | SiN: Wages of Sin | 2015, Inc. |
Kingpin: Life of Crime | Xatrix Entertainment | |
2000 | Soldier of Fortune | Raven Software |
Daikatana | Ion Storm | |
2001 | Anachronox |
Games based on the GPL source release
Year | Title | Developer |
---|---|---|
2003 | UFO: Alien Invasion | UFO: Alien Invasion Team |
2008 | Gravity Bone | Blendo Games |
2012 | Warsow | Warsow Team |
Thirty Flights of Loving | Blendo Games | |
2017 | Alien Arena: Warriors of Mars | COR Entertainment, LLC |
Ports
- Jake2 is a Java port of the Quake II engine's GPL release. It has since been used by Sun as an example of Java Web Start capabilities for games distribution over the Internet.[8] In 2006, it was used to experiment playing 3D games with eye tracking.[9] The performance of Jake2 is on par with the original C version.[10]
- Yamagi Quake II is a port of Quake II to modern systems which aims to preserve the original gameplay.[11][12][13][14]
- vkQuake2 is the original Quake II engine with additional Vulkan renderer created by Krzysztof Kondrak, a programmer from Poland. It was originally released in December 2018 under the GPLv2.[15][16]
See also
References
- Grant, Christopher (August 9, 2011). "id Software looking to shorten dev cycles, stop building new engines for every game". Joystiq. AOL. Archived from the original on August 28, 2011.
- "Technology Licensing: id Tech 2". Archived from the original on November 8, 2009. Retrieved September 17, 2008.
- Sanglard, Fabien (September 16, 2011). "Quake 2 Source Code Review 2/4". fabiensanglard.net. Retrieved July 29, 2023.
Dynamic linking provided numerous advantages: [...] Full native speed for mods, no need to rely on QuakeC and Quake Vitual machine.
- Sanglard, Fabien (September 16, 2011). "Quake 2 Source Code Review 2/4". fabiensanglard.net. Retrieved July 29, 2023.
Dynamic linking provided numerous advantages: [...] More capabilities to mod makers, the entire game could be altered via game.dll.
- Milne, Rory (March 1, 2019). "The making of Quake 2". pcgamer.com. Retrieved July 29, 2023.
We also had light bouncing—simulated radiosity—so every corner of the world had some lighting.
- Sanglard, Fabien (September 16, 2011). "Quake 2 Source Code Review 3/4". fabiensanglard.net. Retrieved July 29, 2023.
Contrary to Quake1, Quake2 used radiosity and colored light during the precalculation.
- DiBona, Chris (December 22, 2001). "Quake 2 Source Code Released Under the GPL". Slashdot. Retrieved September 4, 2016.
- "JDK 6u10: Jake2: Quake II in Java". Sun Microsystems. Retrieved July 27, 2023.
The Jake2 applet example shows the future of game distribution over the Internet. Jake2 is a port of id Software's Quake II to the Java platform developed by Bytonic Software. (...). With the new Java Plug-In, it is now possible to deploy the game directly into the web page with full hardware acceleration and rock-solid reliability.
- Miller, Ross (August 3, 2006). "Play with your eyes". Joystiq. Archived from the original on February 3, 2008. Retrieved July 18, 2009.
- "Q24j: Jake and Java-gaming Viability". O'Reilly Media. November 28, 2005. Retrieved July 18, 2009.
This is a great show of 3D prowess. Things like this, as well as the Narya 2D open source engine from ThreeRings really are starting to at least show Java can serve as a first-class gaming platform. More than that, just having seen all the… *cough* horrible code in games before, having things like Java's threading model, network and database support might really make it a BETTER platform for a lot of forthcoming games than C.
- Dawe, Liam (July 21, 2021). "Alternate Quake II game engine Yamagi Quake II adds optional Vulkan support". GamingOnLinux. Retrieved July 29, 2023.
- Burmeister, Yamagi. "Yamagi Quake II project page". Retrieved July 29, 2023.
- "Quake 2 - Source Ports". GOG.com. Retrieved March 27, 2022.
- "Quake II: Quad Damage Review". Gaming Pastime. August 18, 2017. Retrieved July 29, 2023.
- Larabel, Michael (December 20, 2018). "Quake 2 Gets A Vulkan Renderer 21 Years After Release". Phoronix. Retrieved December 20, 2018.
- "vkQuake2 on GitHub". GitHub. December 19, 2022.
External links
- "Official Quake II engine website". Archived from the original on November 8, 2009. Retrieved August 4, 2007.
- Official Quake II engine source code, as originally released at GitHub
- Official Quake II engine source code, version 3.21 at id Software