RBDOOM-3-BFG – based on DOOM-3-BFG and the goal of this port is to bring DOOM-3-BFG up to latest technology in 2023 making it closer to Doom 2016 while still remaining a DOOM 3 port regarding the gameplay.
I started this project in 2012 and focused on making this code being future proof so other cool projects can build interesting things on top of it without the need to fix a lot of stuff first. Over 40 people all over the world contributed cool patches.
Gaming / Graphics Related
– DX12 / Vulkan support through NVRHI (NVIDIA Rendering Hardware Interface) (thanks to Stephen Pridham for major porting effort)
– Physically Based Rendering using GGX Cook-Torrence as in other modern engines (UE4, Unity) and 3D authoring tools like Blender 3.x or Adobe Substance
– Baked Global Illumination using Irradiance Volumes and Image Based Lighting that fix the pitch black areas
– Soft shadows using a fat shadow mapping atlas All 3 light types (point, spot, parallel/sun) are supported which means parallel lights (sun) use scene independent cascaded shadow mapping.
– True internal 64 bit HDR lighting with filmic ACES tone mapping and gamma-correct rendering in linear RGB space
– Temporal Antialiasing (TAA) as a cheap alternative for MSAA and that works well with HDR and also improves PBR lighting
– Filmic post process effects like Chromatic Aberration and Dithering
– Screen Space Ambient Occlusion used to only dim down the Global Illumination contribution like in the Frostbite engine
– Bink video playback through libbinkdec (thanks to Daniel Gibson) or FFmpeg (thanks to Carl Kenner)
– Cinematic sequences can be skipped (thanks to Biel Bestué de Luna)
– Netcode fixes to allow multiplayer sessions to friends with +connect (manual port forwarding required)