ID3D12Device::CreateUnorderedAccessView-Methode (d3d12.h)

Erstellt eine Ansicht für ungeordneten Zugriff.

Syntax

void CreateUnorderedAccessView(
       ID3D12Resource                         *pResource,
       ID3D12Resource                         *pCounterResource,
       const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc,
  [in] D3D12_CPU_DESCRIPTOR_HANDLE            DestDescriptor
);

Parameter

pResource

Typ: [in, optional] ID3D12Resource*

Ein Zeiger auf das ID3D12Resource-Objekt , das den ungeordneten Zugriff darstellt.

Mindestens eine von pResource oder pDesc muss bereitgestellt werden.

Eine Null-pResource wird verwendet, um einen NULL-Deskriptor zu initialisieren, der direct3D 11-ähnliches NULL-Bindungsverhalten garantiert (Lesen von 0, Schreibvorgänge werden verworfen), muss jedoch über einen gültigen pDesc verfügen, um den Deskriptortyp zu bestimmen.

pCounterResource

Typ: [in, optional] ID3D12Resource*

Die ID3D12Resource für den Zähler (falls vorhanden), der dem UAV zugeordnet ist.

Wenn pCounterResource nicht angegeben ist, muss der CounterOffsetInBytes-Member der D3D12_BUFFER_UAV-Struktur 0 sein.

Wenn pCounterResource angegeben ist, ist dem UAV ein Leistungsindikator zugeordnet, und die Laufzeit führt die Überprüfung der folgenden Anforderungen aus:

  • Das StructureByteStride-Element der D3D12_BUFFER_UAV-Struktur muss größer als 0 sein.
  • Das Format muss DXGI_FORMAT_UNKNOWN sein.
  • Das D3D12_BUFFER_UAV_FLAG_RAW-Flag (eine D3D12_BUFFER_UAV_FLAGS-Enumerationskonstante) darf nicht festgelegt werden.
  • Beide Ressourcen (pResource und pCounterResource) müssen Puffer sein.
  • Der CounterOffsetInBytes-Member der D3D12_BUFFER_UAV-Struktur muss ein Vielfaches von **D3D12_UAV_COUNTER_PLACEMENT_ALIGNMENT** (4096) sein und sich innerhalb des Bereichs der Indikatorressource befinden.
  • pResource darf nicht NULL sein.
  • pDesc darf nicht NULL sein.

pDesc

Typ: [in, optional] const D3D12_UNORDERED_ACCESS_VIEW_DESC*

Ein Zeiger auf eine D3D12_UNORDERED_ACCESS_VIEW_DESC-Struktur , die die Ungeordnete Zugriffsansicht beschreibt.

Ein NULL-pDesc wird verwendet, um nach Möglichkeit einen Standarddeskriptor zu initialisieren. Dieses Verhalten ist identisch mit dem D3D11-NULL-Deskriptorverhalten, bei dem Standardwerte ausgefüllt werden. Dieses Verhalten erbt das Ressourcenformat und die Dimension (sofern nicht typlos), und für Puffer zielen UAVs auf einen vollständigen Puffer und sind typisiert, und für Texturen zielen UAVs auf den ersten Mip und alle Arrayslices ab. Nicht alle Ressourcen unterstützen die NULL-Deskriptorinitialisierung.

[in] DestDescriptor

Typ: D3D12_CPU_DESCRIPTOR_HANDLE

Beschreibt das CPU-Deskriptorhandle, das den Anfang des Heaps darstellt, der die Ansicht ungeordneten Zugriff enthält.

Rückgabewert

Keine

Anforderungen

   
Zielplattform Windows
Kopfzeile d3d12.h
Bibliothek D3D12.lib
DLL D3D12.dll

Weitere Informationen

ID3D12Device