There is growing interest in rendering scenes with many lights, where scenes typically contain hundreds to thousands of lights. Each light illuminates geometry within a finite extent called a light volume. A key aspect of performance is determining which lights apply to what geometry, and then applying those lights efficiently. We present a GPU-based approach using spatial data structures, binning lights by depth analytically while also taking advantage of hardware rasterization. This improves light binning performance by 3–6 $$\times $$ × . We also present a GPU memory and cache friendly data structure that takes two passes to build, giving 4–10 $$\times $$ × improved performance when applying lighting and an overall improvement of 1.3–4 $$\times $$ × for total frametime.
The Visual Computer – Springer Journals
Published: May 2, 2018