← All demos

Deferred shading with a G-buffer

One geometry pass writes albedo, normals, and depth into a three-attachment MultiTarget; a lighting pass reads them back. Move your pointer over the canvas to steer the light.

1 geometry pass → 3 attachments
Top: albedo · normals  Bottom: depth · deferred lighting MultiTarget · drawBuffers
1.00
0.25

Deferred shading rasterizes geometry once and lights per screen pixel, which is why G-buffers power most modern engine pipelines. API reference: MultiTarget.