Jump to content

Quake engine

From Wikipedia, the free encyclopedia
(Redirected from Surface caching)

Quake engine
Developer(s)id Software, (John Carmack, Michael Abrash, John Cash)
Final release
1.09 / December 21, 1999; 24 years ago (1999-12-21)
Repositorygithub.com/id-Software/Quake
Written inC, Assembly (for software rendering & optimization)
PlatformDOS, AmigaOS, Microsoft Windows, macOS, Linux, Nintendo 64, Zeebo, Xbox One, Xbox Series X/S, PlayStation 4, PlayStation 5
PredecessorDoom engine
SuccessorQuake II engine, GoldSrc
LicenseGNU GPL-2.0-or-later
Websitewww.idsoftware.com Edit this on Wikidata
Ingame screenshot of the first-person shooter Nexuiz, running on a modified Quake engine

The Quake engine is the game engine developed by id Software to power their 1996 video game Quake. It featured true 3D real-time rendering. Since 2012, it has been licensed under the terms of GNU General Public License v2.0 or later.

After release, the Quake engine immediately forked. Much of the engine remained in Quake II and Quake III Arena. The Quake engine, like the Doom engine, used binary space partitioning (BSP) to optimise the world rendering. The Quake engine also used Gouraud shading for moving objects, and a static lightmap for non-moving objects.

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]

History

[edit]

The Quake engine was developed from 1995 for the video game Quake, released on June 22, 1996. John Carmack did most of the programming of the engine, with help from Michael Abrash in algorithms and assembly optimization. The Quake II engine (id Tech 2.5) was based on it.

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 game Virtua 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

[edit]
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 fisheye distortion 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]
  • Fruitz of Dojo - Source port aimed at Mac OS X.[26][27][28]
  • TyrQuake - A conservative focused source port.[29]
  • NehQuake - Custom engine for the Nehara mod.[30]
  • 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]

Games using the Quake engine

[edit]

Games using a proprietary license

[edit]
Year Title Developer(s) Publisher(s)
1996 Quake id Software GT Interactive
1997 Quake Mission Pack No. 1: Scourge of Armagon Hipnotic Interactive 3D Realms
Quake Mission Pack No. 2: Dissolution of Eternity Rogue Entertainment 3D Realms
Hexen II Raven Software id Software, Activision
Malice Ratloop Quantum Axcess
Shrak Quantum Axcess Quantum Axcess
X-Men: The Ravages of Apocalypse Zero Gravity Entertainment WizardWorks
1998 Hexen II Mission Pack: Portal of Praevus Raven Software id Software
Activision
Abyss of Pandemonium - The Final Mission Impel Development Team Perfect Publishing
2000 Laser Arena Trainwreck Studios ValuSoft
2001 CIA Operative: Solo Missions Trainwreck Studios ValuSoft
Urban Mercenary Moshpit Entertainment Moshpit Entertainment

Games based on the GPL source release

[edit]
Year Title Developer(s) Publisher(s)
2000 OpenQuartz[43] OpenQuartz Team SourceForge
2001 Transfusion[44] Transfusion Project SourceForge
2002 Eternal War: Shadows of Light Two Guys Software Two Guys Software
2007 Nexuiz Alientrap Alientrap
2005 The Hunted[45] Chris Page ModDB
2011 Xonotic Team Xonotic Team Xonotic
Steel Storm Kot-in-Action Creative Artel Kot-in-Action Creative Artel
2012 Forced: Leashed[46] Kepuli Games Kepuli Games
RetroBlazer[47][48][49] Hydra Game Works Hydra Game Works
2013 Choas Esque Anthology[50] Chaos Esque Team Chaos Esque Team
2015 Rexuiz[51] Rexuiz Team Rexuiz Team
2017 FreeCS[52] FreeCS Team GitHub
2018 FortressOne[53] FortresssOne Team FortressOne Team
The Wastes[54] Vera Visions L.L.C Vera Visions L.L.C
2019 LibreQuake[55] LibreQuake Team GitHub
2021 (Early access) Doombringer[56] Anomic Games Anomic Games
2023 Wrath: Aeon of Ruin Killpixel 3D Realms
1C Entertainment
Station 37[57] Rory Lambert Rory Lambert

See also

[edit]

References

[edit]
  1. ^ "Quake engine GPL release". GitHub. Retrieved May 24, 2020.
  2. ^ "id Tech 2 GPL release". GitHub. Retrieved May 24, 2020.
  3. ^ "id Tech 2 page". id Software. Archived from the original on September 17, 2008.
  4. ^ "Does John Romero Still Enjoy Shooting People?". Next Generation. No. 30. June 1997. pp. 9–12.
  5. ^ 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.
  6. ^ Larabel, Michael (November 10, 2017). "FreeCS: Aiming For An Open-Source Counter-Strike Implementation". Phoronix. Retrieved July 14, 2024.
  7. ^ BTRE (August 3, 2020). "Half-Life: Absolute Zero mimics Half-Life's original vibe, run on Linux with Xash3D FWGS". GamingOnLinux. Retrieved July 15, 2024.
  8. ^ Beschizza, Rob (March 9, 2022). "Play the original Half-Life in the browser". Boing Boing. Retrieved July 16, 2024.
  9. ^ Emms, Steve (October 29, 2023). "DarkPlaces – Quake modification". LinuxLinks. Retrieved July 16, 2024.
  10. ^ "DarkPlaces Homepage". icculus.org. Retrieved November 6, 2017.
  11. ^ "Darkplaces subversion repository". svn.icculus.org. Retrieved August 9, 2019.
  12. ^ darkplacesengine/darkplaces, DarkPlaces Engine, June 14, 2021, retrieved June 21, 2021
  13. ^ "DarkPlaces Quake Engine on Xonotic GitLab". Retrieved February 3, 2020.
  14. ^ "DarkPlaces Quake Engine on Xonotic GitHub". GitHub. Retrieved November 6, 2017.
  15. ^ Stevenaaus (March 1, 2010). "Game Engines". Linux Quake HOWTO. Retrieved July 15, 2024.
  16. ^ Beschizza, Rob (July 30, 2018). "Quake on me: classic shooter rendered with pencil sketch filter". Boing Boing. Retrieved July 15, 2024.
  17. ^ Ille, Adrian (September 11, 2014). "Non-Photorealistic Rendering Techniques for a Game Engine". SlideServe. University of North Carolina at Chapel Hill. Retrieved July 15, 2024.
  18. ^ Goldstein, Maarten (September 25, 2002). "New Tenebrae". Shacknews. Retrieved July 16, 2024.
  19. ^ Royal, Simon (October 10, 2015). "TenebraeQuake, an Enhanced Quake Front End". Low End Mac. Retrieved July 16, 2024.
  20. ^ Wiley, Galen (July 14, 2003). "New Tenebrae Release for PC". Inside Mac Games. Retrieved July 16, 2024.
  21. ^ Largent, Andy (October 27, 2002). "New PC Tenebrae Quake, Mac Update Soon". Inside Mac Games. Retrieved July 16, 2024.
  22. ^ Bosworth, Patrick (July 2, 2021). "Part 5: Source Ports and Fisheye Quake". Shacknews. Retrieved July 16, 2024.
  23. ^ Chalk, Andy (October 10, 2015). "Peripheral vision in games goes ultrawide with new Quake mod". PC Gamer. Retrieved July 16, 2024.
  24. ^ Chakrabarty, Aditya (March 12, 2015). "Peripheral Vision in game goes Ultrawide thanks to the new Quake Mod". sportskeeda. Retrieved July 16, 2024.
  25. ^ Baxter, Joel (May 3, 2015). "Quake Engines, Old and New". Neogeographica. Retrieved July 16, 2024.
  26. ^ Cook, Brad (March 19, 2006). "Quake Gets Universal Binary". The Mac Observer. Retrieved July 15, 2024.
  27. ^ Monks, Neale (August 1, 2003). "Classic Games: Quake". MyMac.com. Retrieved July 15, 2024.
  28. ^ "Frank's Craptacular House of Mac Quake Stuffs". pOx's Playhouse. July 1, 2019. Retrieved July 15, 2024.
  29. ^ Stevenaaus (March 1, 2010). "Game Engines". Linux Quake HOWTO. Retrieved July 15, 2024.
  30. ^ Stevenaaus (March 1, 2010). "Mods". Linux Quake HOWTO. Retrieved July 15, 2024.
  31. ^ Boyle, Joshua (August 18, 2022). "Nods to Mods Interview: Rubicon 2 for Quake". Slayer's Club. Retrieved July 15, 2024.
  32. ^ Papadopoulos, John (December 11, 2018). "Quake Xmas Jam 2018 adds 21 new maps to id Software's classic shooter, available for download". DOSGaming. Retrieved July 15, 2024.
  33. ^ Yang, Robert (August 23, 2021). "Quake Renaissance: a short history of 25 years of Quake modding". Rock Paper Shotgun. Retrieved July 14, 2024.
  34. ^ Dawe, Liam (April 27, 2022). "Block Quake is basically Quake made into LEGO". GamingOnLinux. Retrieved July 14, 2024.
  35. ^ Gneiting, Axel (July 20, 2016). "My Vulkan Quake 1 Port running "In the Shadows" mod. Some stuff still missing. Code is here https://github.com/Novum/vkQuake". Twitter. Retrieved August 6, 2016.
  36. ^ "Vulkan Quake port based on QuakeSpasm". github.com/Novum/vkQuake. Retrieved August 6, 2016.
  37. ^ Spirit (January 30, 2022). "Ironwail, a high-performance QuakeSpasm fork". InsideQC. Retrieved July 14, 2024.
  38. ^ Chalk, Andy (February 17, 2021). "This mod turns Quake into a top-down shooter". PC Gamer. Retrieved July 16, 2024.
  39. ^ Baxter, Joel (May 3, 2015). "Quake Engines, Old and New". Neogeographica. Retrieved July 16, 2024.
  40. ^ Campbell, Alex (May 20, 2016). "We're running a Quake server all week—come play with us!". PC Gamer. Retrieved July 16, 2024.
  41. ^ Fenlon, Wes (May 22, 2021). "We're running a Quake multiplayer server all week for the 25th anniversary". PC Gamer. Retrieved July 16, 2024.
  42. ^ Fairweather (February 19, 2022). "Quake Engines & Source Ports: A Beginners Guide". Slipgate Sightseer. Retrieved July 15, 2024.
  43. ^ neozeed (June 24, 2018). "Open Quartz". Virtually Fun. Retrieved February 8, 2023.
  44. ^ Von Kallenbach, Gareth (2003). "Devoted to the cause - Blood Transfusion to save aging game". Game Industry News. Archived from the original on April 8, 2003.
  45. ^ "The Hunted Chronicle 2 review". Nixbit. Retrieved April 23, 2023.
  46. ^ Tricky (August 25, 2012). "Force: Leashed". Jay Is Games. Retrieved April 24, 2023.
  47. ^ Yu, Derek (January 16, 2012). "RetroBlazer (Alpha)". TIG Source. Retrieved April 24, 2023.
  48. ^ Priestman, Chris (January 21, 2015). "RetroBlazer Has The Fast Pace, Bright Colors Of 1990s FPS". Siliconera. Retrieved July 14, 2024.
  49. ^ Tarason, Dominic (January 12, 2012). "16-Bit Killer – RetroBlazer Demo Offers 2.5d FPS Nostlagia With A Twist". DIY Gamer. Archived from the original on March 21, 2012. Retrieved July 14, 2024.
  50. ^ "Chaos Esque Anthology Free 3D FPS, fork from Xonotic". FOSS Games. April 3, 2024. Retrieved July 15, 2024.
  51. ^ "Rexuiz FPS". Indie Gamer. Retrieved July 14, 2024.
  52. ^ Larabel, Michael (November 10, 2017). "FreeCS: Aiming For An Open-Source Counter-Strike Implementation". Phoronix. Retrieved July 14, 2024.
  53. ^ Dawe, Liam (November 21, 2018). "Get some classic FPS action on with QuakeWorld Team Fortress". Retrieved July 29, 2024.
  54. ^ "The Wastes". Frag-Net.con. Retrieved July 14, 2024.
  55. ^ Yang, Robert (August 5, 2021). "Quake Renaissance: how to start playing the original Quake today". Rock Paper Shotgun. Retrieved February 8, 2023.
  56. ^ Dawe, Liam (June 5, 2021). "DOOMBRINGER is a new first-person shooter from veterans of the Doom and Quake communities". GamingOnLinux. Retrieved December 26, 2023.
  57. ^ "Station 37". Metacritic. Retrieved July 16, 2024.
[edit]