baldurk / renderdoc

RenderDoc is a stand-alone graphics debugging tool.
https://renderdoc.org
MIT License
8.88k stars 1.33k forks source link

Resource Usages context menu and panel doesn't show resources accessed via ResourceDescriptorHeap indexing (bindless) #3278

Open kylawl opened 6 months ago

kylawl commented 6 months ago

Description

Resource Usage in frame and Used: context menu do not display usages resulting from bindless access.

Steps to reproduce

  1. Select a draw or dispatch which uses ResourceDescriptorHeap indexing
  2. Right click on a ResourceDescriptorHeap indexed resource.
  3. Note: the Used context menu will only contain usages where the resource was bound and other non-bindless work like barriers
  4. Select Open in Resource Inspector, the same subset of usages as the context menu is only visible there.

Environment

Thanks Baldur!

baldurk commented 6 months ago

Yes the resource usage is tracked via what bindings are used on the CPU, so in the case of bindless access (which means mostly any access via a large arrayed binding in the shader) rather than reporting every binding as used everywhere, they are reported as used nowhere.

It's not clear if it's technically feasible to track accesses that are only possible to account for on the GPU.