Add light classification + prefix sum before light culling job #4827
Labels
feature/graphics
This item is related to the Atom renderer or graphics.
sig/graphics-audio
Categorizes an issue or PR as relevant to SIG graphics-audio.
Is your feature request related to a problem? Please describe.
Currently, lights are culled in a single uber-shader per 16x16 tile for all light types. This creates a worst-case occupancy characteristic for the light culling jobs.
Describe the solution you'd like
The typical approach is to classify each tile based on available lights and write out a mapping from tile classification to a set of tile coordinates, performing a prefix sum to determine a dispatch count per classification as well. This in turn drives a dispatch indirect per culling shader (one per classification).
Additional context
This is another optimization to consider along with #4330
The text was updated successfully, but these errors were encountered: