By Andrew Lauritzen
This sample demonstrates a number of deferred rendering techniques including conventional deferred shading, deferred lighting and tile-based deferred shading. Tile-based deferred shading is implemented in DirectX 11 Compute Shader and achieves high performance even with many lights by amortizing the light culling overhead over screen tiles as well as grouping lights to avoid wasting memory bandwidth. Multi-sample anti-aliasing (MSAA) is fully supported for all techniques. The tile-based techniques in particular use efficient user-space scheduling to apply per-sample shading to only the edge pixels that require it.
Citation: Andrew Lauritzen, Deferred Rendering for Current and Future Rendering Pipelines, Beyond Programmable Shading, SIGGRAPH 2010, July 2010.
Slides: deferred_shading_siggraph_2010.pdf (990KB)
Code: deferred_shading.zip (40MB)
Videos & Screenshots