Interested in an open source graphics engine?
The 2004 first-person shooter (FPS) game featured dynamic light and shadow effects
Software developer Fabien Sanglard has completed his source code review of the first-person shooter (FPS) DOOM 3. The source code review will be useful to anyone who is considering using or modifying the open source graphics engine of DOOM 3 to either create new games or repurpose it for some other task.
Source code for the DOOM 3 was originally released under the GPLv3 by id Software last November, but at 601,047 lines of code, the id Tech 4 game engine it uses is nearly twice as big as its predecessor, which was used for Quake III. Sanglard has previously published similar reviews for classic games such as Another World, Quake II, the classic and iPhone versions of DOOM, and others.
Among the topics that Sanglard covers in his recently published DOOM 3 Source Code Review is the graphics engine’s renderer. When DOOM 3 was released in August 2004, the engine set new standards with its “Unified Lighting and Shadows” and “Visible Surface Determination”, both for runtime and “Multi-pass Rendering” for scene lighting.
Sanglard also published a Q&A with id Software co-founder John Carmack in which they discuss further details. Carmack says, for example, that although the team more or less “slid into” its decision to use the C++ programming language for DOOM 3 instead of C, he is now certain that C++ is the right choice, especially for large multi-developer projects that place high priority on performance.