About
Doom 3 is id Software's first-person shooter about a demonic invasion of the UAC's Mars Research Facility, in which the player fights through hordes of monsters using weapons including a pistol, chainsaw, and grenades. d3es is built on dhewm3, a GPL source port of Doom 3, and adds multithreading and a custom-framebuffer rendering path on top of the earlier D3WASM project, which first brought GLES2 rendering to dhewm3. It exposes new console options for multithreading (r_multithread), ETC1 texture compression (r_useETC1), configurable framebuffer resolution (r_framebufferWidth/r_framebufferHeight), and a frame-rate cap (r_maxFps). Being a source port, it does not include Doom 3's game data — a legitimately owned copy of the game, patched to version 1.3.1 and available via Steam, is required.
How it differs from the original
Compared to the original 2004 GPL source release, dhewm3 (and by extension d3es) is a 64-bit port that uses SDL for windowing, OpenGL, and input, and OpenAL (with EFX for EAX-style reverb) for audio, replacing the original's OS-specific audio backends. It also restores "Carmack's Reverse" depth-fail stencil shadow rendering, which the original GPL release omitted for patent reasons and which was reinstated in dhewm3 1.5.1 once the underlying patent expired, without changing the game's visual appearance or performance.
Getting started
Requires a legally obtained copy of Doom 3 game data, patched to version 1.3.1, which is not included. Build with CMake against required libraries (zlib, OpenAL Soft, SDL, and optionally libcurl), then run the resulting binary with the fs_basepath option pointed at the Doom 3 installation directory; Windows users can alternatively use the project's provided precompiled dependency binaries.
History
d3es started as an update and cleanup of the D3WASM project, which had brought GLES2 rendering to the dhewm3 Doom 3 source port; d3es added multithreading and framebuffer customization on top of that work while continuing to track upstream dhewm3.
Additional notes
- Legal note
- "Carmack's Reverse," a stencil-shadow rendering technique omitted from the original Doom 3 GPL release for patent reasons, was restored in dhewm3 1.5.1 after the relevant Creative Labs patent expired.