Freigeben über


ID3D12Device::CreateCommandAllocator-Methode (d3d12.h)

Erstellt ein Befehlszuordnungsobjekt.

Syntax

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

Parameter

[in] type

Typ: D3D12_COMMAND_LIST_TYPE

Ein D3D12_COMMAND_LIST_TYPE typisierter Wert, der den Typ des zu erstellenden Befehlszuteilungsbefehls angibt. Der Typ der Befehlszuweisung kann der Typ sein, der entweder direkte Befehlslisten oder Bündel aufzeichnet.

riid

Typ: REFIID

Der globally unique Identifier (GUID) für die Befehlszuordnungsschnittstelle (ID3D12CommandAllocator). Die REFIID ( GUID) der Schnittstelle zum Befehlszuteilung kann mithilfe des Makros __uuidof() abgerufen werden. Beispielsweise ruft __uuidof(ID3D12CommandAllocator) die GUID der Schnittstelle zu einem Befehlszuteilungsanbieter ab.

[out] ppCommandAllocator

Typ: void**

Ein Zeiger auf einen Speicherblock, der einen Zeiger auf die ID3D12CommandAllocator-Schnittstelle für die Befehlszuordnung empfängt.

Rückgabewert

Typ: HRESULT

Diese Methode gibt E_OUTOFMEMORY zurück, wenn nicht genügend Arbeitsspeicher vorhanden ist, um die Befehlszuordnung zu erstellen. Weitere mögliche Rückgabewerte finden Sie unter Direct3D 12-Rückgabecodes .

Hinweise

Das Gerät erstellt Befehlslisten aus dem Befehlszuordnungsgeber.

Beispiele

Im D3D12Bundles-Beispiel wird ID3D12Device::CreateCommandAllocator wie folgt verwendet:

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

Weitere Informationen finden Sie im Beispielcode in der D3D12-Referenz.

Anforderungen

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

Weitere Informationen

ID3D12Device