
The G-Buffer
Deferred shading: geometry and material baked into a four-target G-buffer so one Cook–Torrance BRDF evaluation runs per visible pixel, additive per light no matter how many.
One buffer at a time, every shortcut the rendering equation lets you take at 60 frames per second.
The path tracer was about correctness through brute force: shoot enough rays, average enough samples, the right answer falls out eventually. The deferred renderer is its inverse: cheat the rendering equation in clever ways so the right answer falls out at sixty frames per second.
Every chapter is a different approximation of the same integral the path tracer evaluated honestly. The art of the real-time renderer is knowing which approximations the eye will accept, and where they break.

Deferred shading: geometry and material baked into a four-target G-buffer so one Cook–Torrance BRDF evaluation runs per visible pixel, additive per light no matter how many.

Shadow mapping by rendering depth from the light's view, then four progressively softer ways to read it back: biased binary, PCF, variance, and moment shadow maps, blurred in compute.

Image-based lighting in real time: the HDR sky pre-filtered to nine spherical-harmonic coefficients for diffuse, importance-sampled with GGX and Hammersley for specular, then tone-mapped back to display range.

Alchemy screen-space ambient occlusion: spiral-sampling each pixel's G-buffer neighborhood for the obscurance IBL flattens out, then a depth- and normal-aware bilateral blur before it multiplies the ambient term.

Screen-space directional occlusion: sampling the 3D hemisphere so occlusion keeps its direction and color, then re-using the blocked samples as secondary emitters for one bounce of indirect light.