
1
VI
Compute-Based Tiled Culling
Jason Stewart
1.1 Introduction
Modern real-time rendering engines need to support many dynamic light sources
in a scene. Meeting this requirement with traditional forward rendering is prob-
lematic. Typically, a forward-rendered engine culls lights on the CPU for each
batch of scene geometry to be drawn, and changing the set of lights in use requires
a separate draw call. Thus, there is an undesirable tradeoff between using smaller
pieces of the scene for more efficient light culling versus using larger batches and
more instancing for fewer total draw calls. The intersection tests required for
light culling can also be a