GZDoom

GZDoom is a fork of the ZDoom source port created by Christoph Oelckers (Graf Zahl), who still oversees its development. First released in 2005, it has versions for Windows, Linux, and MacOS.

As of 2021, it remains a very popular port due to both its unprecedented modding capability and graphical optimizations for modern hardware. In particular, the ZScript language unique to GZDoom combined with DECORATE inherited from ZDoom, enables a high level of gameplay modding and special mapping features.

In recent years, many maps and gameplay mods, plus some total conversions and stand-alone games, have been exclusive to GZDoom. This includes over a dozen Cacoward winners. However, the limitations of the engine can result in laggy experiences, especially with effects-heavy maps and mods.

History
GZDoom started as a new renderer for PrBoom, but this early version was never publicly released. In 2005, Graf Zahl ported his renderer to the ZDoom Community Build, and this marked the first official release of GZDoom. The port was from then on tied to the ZDoom codebase.

On January 19, 2008, development of the port was put on hold until another official release of ZDoom is made, due to highly extensive changes to the ZDoom renderer (which consequently require extensively changing the rendering code for compatibility) coming more frequently than Graf Zahl could catch up. An official release of ZDoom was made on February 14, 2008, and version 1.1.0 of GZDoom was released shortly afterward incorporating the changes from that version.

On April 14 2010, Graf Zahl announced on the Doomworld forums that development of GZDoom had halted. He stated his reasons as having no time to work on it, and that he was frustrated by numerous complaints about the port's lack of compatibility with ATI video cards. Graf Zahl took down the website and all its subfolders, making GZDoom temporarily unavailable except from its mirrors. The site has since been restored.

In 2014, work on GZDoom's renderer resumed. Upon release of 2.0 on August 2, 2014, OpenGL 2.x support was dropped, as the renderer was rewritten to use OpenGL 3.x and OpenGL 4.4, albeit in compatibility mode. After some time of having dual 1.9.x and 2.1.x releases, support for OpenGL 2.0 was reinstated with GZDoom 2.2.0 in 2016, but with fewer features than before in that legacy mode.

Beginning in December 2016, following ZDoom's official halt in development, GZDoom's development is now detached from ZDoom and the port is the first-level upstream for other forks (namely QZDoom and Zandronum), without looking back at ZDoom.

The current primary direction of development is ZScript, with several other things developed by contributors (for example, OpenGL renderer enhancements by dpJudas). Starting with version 4.3.2, support for the WAD files from the Doom Classic Unity port was added.

Features

 * All ZDoom features
 * Rudimentary support for Doom Legacy (To run existing Legacy mods like Ni'mRoD - IXNAY on the HOMBRE)
 * ZScript
 * Support for the DEHEXTRA standard
 * OpenGL renderer, allowing the following features:
 * Full 3D floors (including slopes)
 * Reflective floors
 * Dynamic lights, brightmaps, glowing flats, custom
 * ' and '-style skyboxes in addition to regular ZDoom skyboxes
 * Optional High-quality (HQnX) rescaling filters for graphics, sprites and textures
 * MD2, MD3 and DMD model support

After the QZDoom codebase got merged with GZDoom, the latter gained several new features, courtesy of Magnus Norddahl (dpJudas) and Rachael Alexanderson (Eruanna). These include:
 * Polygonal, 3-point perspective truecolor software renderer (“Softpoly”)
 * Truecolor support for the classic 2-point renderer
 * Postprocessing framework (SSAO, bloom, blur, custom post process shaders, etc.)
 * Vulkan renderer backend
 * HDR monitor support
 * ZScript JIT bytecode compiler
 * Proper windowed mode support (i.e. you can freely resize the game window)
 * Correct ZDoom software light mode for the hardware renderer
 * High resolution correct version of the software fuzz, for both software and hardware renderers
 * Improved dynamic light math, shadowmaps and spotlights
 * Materials (Classic, normal and specular maps and PBR textures), but not environment maps

Notable exclusives
These are notable creations exclusive to GZDoom.

Games
These are total conversions and stand-alone games.
 * The Adventures of Square
 * Hedon
 * Robocop Doom
 * Total Chaos

Gameplay mods
These mods alter gameplay in a significant manner and can be used with the vast majority of classic Doom maps.
 * Corruption Cards
 * Guncaster
 * Hideous Destructor
 * SWWM GZ

Maps
Some of these have custom weapons or monsters, but they are still classic Doom-based gameplay, unlike total conversions.
 * Ar Luminae
 * Bastion of Chaos
 * Dark Universe
 * Infraworld - Coma Moonlight
 * Nameless
 * Paradise
 * The Slaughter Spectrum
 * Tartarus
 * Verdant Citadel