Partager via


ID3D12Device::CreateUnorderedAccessView, méthode (d3d12.h)

Crée une vue pour un accès non ordonné.

Syntaxe

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

Paramètres

pResource

Type : [in, facultatif] ID3D12Resource*

Pointeur vers l’objet ID3D12Resource qui représente l’accès non ordonné.

Au moins un de pResource ou pDesc doit être fourni.

Un pResource null est utilisé pour initialiser un descripteur null, qui garantit un comportement de liaison null de type Direct3D 11 (lecture 0s, les écritures sont ignorées), mais doit avoir un pDesc valide pour déterminer le type de descripteur.

pCounterResource

Type : [in, facultatif] ID3D12Resource*

ID3D12Resource pour le compteur (le cas échéant) associé à l’UAV.

Si pCounterResource n’est pas spécifié, le membre CounterOffsetInBytes de la structure D3D12_BUFFER_UAV doit avoir la valeur 0.

Si pCounterResource est spécifié, un compteur est associé à l’UAV et le runtime effectue la validation des exigences suivantes :

  • Le membre StructureByteStride de la structure D3D12_BUFFER_UAV doit être supérieur à 0.
  • Le format doit être DXGI_FORMAT_UNKNOWN.
  • L’indicateur D3D12_BUFFER_UAV_FLAG_RAW (constante d’énumération D3D12_BUFFER_UAV_FLAGS ) ne doit pas être défini.
  • Les deux ressources (pResource et pCounterResource) doivent être des mémoires tampons.
  • Le membre CounterOffsetInBytes de la structure D3D12_BUFFER_UAV doit être un multiple de **D3D12_UAV_COUNTER_PLACEMENT_ALIGNMENT** (4096) et se trouver dans la plage de la ressource de compteur.
  • pResource ne peut pas avoir la valeur NULL
  • pDesc ne peut pas avoir la valeur NULL.

pDesc

Type : [in, facultatif] const D3D12_UNORDERED_ACCESS_VIEW_DESC*

Pointeur vers une structure D3D12_UNORDERED_ACCESS_VIEW_DESC qui décrit la vue d’accès non ordonné.

Un pDesc null est utilisé pour initialiser un descripteur par défaut, si possible. Ce comportement est identique au comportement de descripteur null D3D11, où les valeurs par défaut sont renseignées. Ce comportement hérite du format de ressource et de la dimension (s’il n’est pas typé) et, pour les tampons, les UAV ciblent une mémoire tampon complète et sont typées, et pour les textures, les UAV ciblent la première mip et toutes les tranches de tableau. Toutes les ressources ne prennent pas en charge l’initialisation du descripteur Null.

[in] DestDescriptor

Type : D3D12_CPU_DESCRIPTOR_HANDLE

Décrit le handle de descripteur du processeur qui représente le début du tas qui contient la vue d’accès non ordonné.

Valeur de retour

None

Spécifications

   
Plateforme cible Windows
En-tête d3d12.h
Bibliothèque D3D12.lib
DLL D3D12.dll

Voir aussi

ID3D12Device