Compartilhar via


Método ID3D12Device::CreateCommandAllocator (d3d12.h)

Cria um objeto alocador de comando.

Sintaxe

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

Parâmetros

[in] type

Tipo: D3D12_COMMAND_LIST_TYPE

Um valor do tipo D3D12_COMMAND_LIST_TYPE que especifica o tipo de alocador de comando a ser criado. O tipo de alocador de comando pode ser o tipo que registra listas de comandos diretas ou pacotes.

riid

Tipo: REFIID

O GUID (identificador global exclusivo) para a interface do alocador de comandos (ID3D12CommandAllocator). O REFIID, ou GUID, da interface para o alocador de comandos pode ser obtido usando a macro __uuidof(). Por exemplo, __uuidof(ID3D12CommandAllocator) obterá o GUID da interface para um alocador de comando.

[out] ppCommandAllocator

Tipo: void**

Um ponteiro para um bloco de memória que recebe um ponteiro para a interface ID3D12CommandAllocator para o alocador de comando.

Retornar valor

Tipo: HRESULT

Esse método retornará E_OUTOFMEMORY se não houver memória suficiente para criar o alocador de comando. Consulte Códigos de retorno do Direct3D 12 para obter outros valores de retorno possíveis.

Comentários

O dispositivo cria listas de comandos do alocador de comandos.

Exemplos

O exemplo D3D12Bundles usa ID3D12Device::CreateCommandAllocator da seguinte maneira:

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)));

Consulte o código de exemplo na referência D3D12.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d12.h
Biblioteca D3D12.lib
DLL D3D12.dll

Confira também

ID3D12Device