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

Incorrect references in D3D12 Counters & Queries spec #66

Open
Devaniti opened this issue Jun 5, 2021 · 0 comments
Open

Incorrect references in D3D12 Counters & Queries spec #66

Devaniti opened this issue Jun 5, 2021 · 0 comments

Comments

@Devaniti
Copy link
Contributor

Devaniti commented Jun 5, 2021

There's a lot of issues with https://github.com/microsoft/DirectX-Specs/blob/master/d3d/CountersAndQueries.md
Probably because it wasn't revised since some pre-release spec of d3d12
It's also out of sync with https://docs.microsoft.com/en-us/windows/win32/direct3d12/uav-counters

A lot of struct/API references are incorrect:

  • D3D12_STREAM_OUTPUT_VIEW_DESC is used where D3D12_STREAM_OUTPUT_BUFFER_VIEW was probably meant to be used
  • SetStreamOutputBuffersSingleUse/SetStreamOutputBufferOffset is used where SOSetTargets was probably meant to be used
  • CreateStreamOutputView (not sure if there's equivalent in current spec, looks like it's part of PSO right now)
  • SetGraphicsRootUnorderedAccessViewSingleUse used instead of SetGraphicsRootUnorderedAccessView
  • SetComputeRootUnorderedAccessViewSingleUse used instead of SetComputeRootUnorderedAccessViewSingleUse
  • ID3D12CommandList::ResolveQueryData used instead of ID3D12GraphicsCommandList::ResolveQueryData
  • etc.

Also:

  • Some wording is weird - "The application is responsible for allocating storage for a 32-bit quantity called the BufferFilledSize"
  • D3D12_ROOT_SIGNATURE_FLAGS contains wrong enum names in page (e.g. D3D12_ROOT_SIGNATURE_ALLOW_STREAM_OUTPUT instead of D3D12_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT)
  • D3D12_BUFFER_UAV_FLAG enum is missing D3D12_BUFFER_UAV_FLAG_NONE
  • D3D12_BUFFER_UAV::Flags is UINT type instead of D3D12_BUFFER_UAV_FLAGS
  • etc.

There's also same incorrect references in other pages as well:

And that lists are non exhaustive

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