Unified lighting and shadowing

From Wikipedia, the free encyclopedia

Doom 3 uses unified lighting and shadowing. Shadows are calculated using a stencil shadow volume.
Enlarge
Doom 3 uses unified lighting and shadowing. Shadows are calculated using a stencil shadow volume.

Unified lighting and shadowing is a lighting model used in the Doom 3 game engine developed by Id Software.

Previous 3D games like Quake III used separate lighting models for determining how a light would illuminate a character or a map. Lighting and shadow information for maps would be static, pre-generated and stored, whereas lighting and shadowing information for characters would be determined at run-time.

Doom 3 claims to use a unified model, which renders every triangle using the same lighting mechanism, regardless as to whether it originated from a model, or map geometry. This is not strictly true as some models are marked with a 'don't self shadow' flag, custom material shaders can allow different lighting mechanisms to be employed on different surfaces (most often a reflective cube map effect), and the point sprite effects (such as explosions) are totally unlit. A renderer using a truly unified lighting system would use an identical set of lighting calculations for every pixel on the screen and would not make such distinctions, although Doom 3's lighting is certainly far 'more unified' than previous games, there is still much more which can be done on recent and future hardware to improve the consistency of lighting in games.

Doom 3 does not use OpenGL's built in system, instead, it uses its own system which gives better quality and more accurate illumination than OpenGL's default lighting model. [citation needed]

Quake III used an older lighting model in which shadows are calculated differently for moving characters and backgrounds.
Enlarge
Quake III used an older lighting model in which shadows are calculated differently for moving characters and backgrounds.

[edit] See also