Partager via


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

Crée un tas qui peut être utilisé avec des ressources placées et des ressources réservées.

Syntaxe

HRESULT CreateHeap(
  [in]            const D3D12_HEAP_DESC *pDesc,
  [in]            REFIID                riid,
  [out, optional] void                  **ppvHeap
);

Paramètres

[in] pDesc

Type : const D3D12_HEAP_DESC*

Pointeur vers une structure de D3D12_HEAP_DESC constante qui décrit le tas.

[in] riid

Type : REFIID

Référence à l’identificateur global unique (GUID) de l’interface de tas à retourner dans ppvHeap.

Alors que riidResource est généralement le GUIDd’ID3D12Heap, il peut s’agir du GUID de n’importe quelle interface. Si l’objet de ressource ne prend pas en charge l’interface de ce GUID, la création échoue avec E_NOINTERFACE.

[out, optional] ppvHeap

Type : void**

Pointeur facultatif vers un bloc de mémoire qui reçoit le pointeur d’interface demandé vers l’objet de tas créé.

ppvHeap peut être nullptr, pour activer les tests de capacité. Lorsque ppvHeap a la valeur nullptr, aucun objet n’est créé et S_FALSE est retourné lorsque pDesc est valide.

Valeur retournée

Type : HRESULT

Si la fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreurHRESULT.

Valeur retournée Description
E_OUTOFMEMORY La mémoire est insuffisante pour créer le tas.

Pour connaître les autres valeurs de retour possibles, consultez Codes de retour Direct3D 12 .

Notes

CreateHeap crée un tas qui peut être utilisé avec des ressources placées et des ressources réservées.

Avant de publier la référence finale sur le tas, votre application doit s’assurer que le GPU ne lit plus ni n’écrit dans ce tas.

Un objet de ressource placé contient une référence sur le tas sur lequel il est créé ; mais une ressource réservée ne contient pas de référence pour chaque mappage effectué sur un tas.

Spécifications

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

Voir aussi

ID3D12Device

Tas partagés