The realism of the Doom III engine will hinge on two features; a realistic physics engine, and a unified lighting scheme that incorporates detail bump-mapping and volumetric shadows. It is interesting to note that neither of these features specifically require programmable vertex and pixel shaders. A good physics engine simply requires a fast CPU, while volumetric shadows require a stencil buffer, and bump-mapping just needs direct support. However hardware prior to the GeForce3 simply lacked the flexibility or power to implement these features at an acceptable frame-rate.