Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add light classification + prefix sum before light culling job #4827

Open
jeremyong-az opened this issue Oct 20, 2021 · 0 comments
Open

Add light classification + prefix sum before light culling job #4827

jeremyong-az opened this issue Oct 20, 2021 · 0 comments
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.

Comments

@jeremyong-az
Copy link
Contributor

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

@jeremyong-az jeremyong-az added needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. 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. and removed needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Oct 20, 2021
@superkitcath superkitcath added the needs-priority Indicates a PR lacks a `priority/foo` label and requires one. label Nov 10, 2021
@superkitcath superkitcath removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. labels Dec 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
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.
Projects
None yet
Development

No branches or pull requests

2 participants