Historically, the Quake engine has been treated as a separate engine from its successor, the
Quake II engine. Although the codebases for Quake and Quake II were separate GPL releases,[1][2] both engines are now considered variants of id Tech 2.[3]
John Romero initially conceived of Quake as an
action game taking place in a fully
3D polygon world, inspired by
Sega AM2's 3D
fighting gameVirtua Fighter. Quake was also intended to feature Virtua Fighter-influenced third-person
melee combat. However, id Software considered it to be risky, and it would've taken longer to develop the engine. Because the project was taking too long, the third-person melee was eventually dropped.[4][5]
Simplified process of reducing map complexity in Quake
Derivative engines
Family tree illustrating derivations of Quake engines
On December 21, 1999, John Carmack of id Software released the Quake engine
source code on the Internet under the terms of GPL-2.0-or-later, allowing programmers to edit the engine and add new features. Programmers were soon releasing new versions of the engine on the net. Some of the most known engines are:
GoldSrc – The first engine to be created by
Valve. It was used in the
Half-Life series, and gave rise to the
Source engine. The Xash3D projects, as well as the FreeHL and FreeCS ports,[6] use Quake source code in part to recreate this engine, even with a wrapper for running the game.[7][8]
DarkPlaces – A significantly modified engine used in several standalone games and Quake mods.[9][10] Although the last stable release was on May 13, 2014, it has received numerous updates through its
SVN repository since then.[11] Its home page was hosted on
Icculus.org until 2021, when the engine switched to a
Git repository hosted on
GitHub.[12] The developers of Xonotic provide mirrors of DarkPlaces source code on various social coding platforms[13][14] since the game is built on and distributed with the development version of the engine.
QuakeForge - One of the earlier major community ports.[15]
NPRQuake - Fork of Quake featuring non-photorealistic rendering giving it a pencil drawn look.[16][17]
Tenebrae - Custom Quake engine with real time lighting and bumpmapping among other features.[18][19][20][21]
Fisheye Quake - Custom Quake engine with
fisheyedistortion by the author of PanQuake.[22]
Blinky - Fork of the fisheye view along with the TyrQuake software renderer.[23][24]
Engoo (Derivative of
WinQuake) - Graphically enhanced software renderer based port.[25]
FitzQuake (Derivative of
GLQuake) - Seminal port whose
SDL version was later forked into numerous others.[31]
MarkV (Derivative of FitzQuake, successor to DirectQ) - Came in both
GLQuake and
WinQuake derived versions.[32]
Quakespasm (Derivative of FitzQuake) – Commonly used source port.[33]
Quakespasm-Spiked (Derivative of Quakespasm) - Limit-removing fork. [34]
vkQuake – (Derivative of Quakespasm) – Uses
Vulkan API for rendering programmed by id Software employee Axel Gneiting, released under the
GPLv2.[35][36]
Ironwail - (Derivative of Quakespasm) – An engine aiming at maximum performance.[37]
FTEQW (Derivative of
QuakeWorld) - A modern client for online multiplayer.[38][39]
ezQuake (Derivative of FuhQuake) - Multiplayer focused port often paired with the nQuake launcher.[40][41]
JoeQuake (Derivative of FuhQuake) - A port popular with
speedrunners.[42]
^Edge, May 1997, My original idea was to do something like Virtua Fighter in a 3D world, with full-contact fighting, but you'd also be able to run through a world, and do the same stuff you do in Quake, only when you got into these melees, the camera would pull out into a third-person perspective. It would've been great, but nobody else had faith in trying it. The project was taking too long, and everybody just wanted to fall back on the safe thing – the formula.