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

Temporary upload buffers are bound as UAVs in DX12 scene build dispatches #228

Open
NoahMercury opened this issue Nov 18, 2021 · 1 comment

Comments

@NoahMercury
Copy link

NoahMercury commented Nov 18, 2021

The temporary buffers holding InstanceDescriptions are allocated off of the upload heap, and then bound as UAVs in the scene BVH build dispatches. This is illegal and is reported as such by GPU-based validation.

If these resources receive D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS, the error is caught immediately by the debug layer, so that's not the fix. The correct fix is to allocate another non-upload buffer and copy the data to it from the upload buffer.

Repro steps:

  1. Take a PIX for Windows capture of the basic test.
  2. Open the capture, go to the "Warnings" pane.
  3. Click "run GPU-based validation". When the prompt comes up asking for running the analysis, click "Yes".
@ghost
Copy link

ghost commented Nov 20, 2021

  1. Click "run GPU-based validation". When the prompt comes up asking for running the analysis, click "Yes".

And what it says there exactly?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant