Partager via


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

Crée un objet d’allocation de commande.

Syntaxe

HRESULT CreateCommandAllocator(
  [in]  D3D12_COMMAND_LIST_TYPE type,
        REFIID                  riid,
  [out] void                    **ppCommandAllocator
);

Paramètres

[in] type

Type : D3D12_COMMAND_LIST_TYPE

Valeur de type D3D12_COMMAND_LIST_TYPE qui spécifie le type d’allocator de commande à créer. Le type d’allocateur de commandes peut être le type qui enregistre les listes de commandes directes ou les bundles.

riid

Type : REFIID

Identificateur global unique (GUID) pour l’interface d’allocator de commande (ID3D12CommandAllocator). Le REFIID, ou GUID, de l’interface de l’allocateur de commande peut être obtenu à l’aide de la macro __uuidof(). Par exemple, __uuidof(ID3D12CommandAllocator) obtient le GUID de l’interface vers un allocateur de commande.

[out] ppCommandAllocator

Type : void**

Pointeur vers un bloc de mémoire qui reçoit un pointeur vers l’interface ID3D12CommandAllocator pour l’allocateur de commandes.

Valeur retournée

Type : HRESULT

Cette méthode retourne E_OUTOFMEMORY si la mémoire est insuffisante pour créer l’allocateur de commande. Pour obtenir d’autres valeurs de retour possibles, consultez Codes de retour Direct3D 12 .

Remarques

L’appareil crée des listes de commandes à partir de l’allocateur de commandes.

Exemples

L’exemple D3D12Bundles utilise ID3D12Device ::CreateCommandAllocator comme suit :

ThrowIfFailed(pDevice->CreateCommandAllocator(D3D12_COMMAND_LIST_TYPE_DIRECT, IID_PPV_ARGS(&m_commandAllocator)));
ThrowIfFailed(pDevice->CreateCommandAllocator(D3D12_COMMAND_LIST_TYPE_BUNDLE, IID_PPV_ARGS(&m_bundleAllocator)));

Reportez-vous à l’exemple de code dans la référence D3D12.

Configuration requise

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

Voir aussi

ID3D12Device