D3D12SerializeVersionedRootSignature-Funktion (d3d12.h)
Serialisiert eine Stammsignatur einer beliebigen Version, die an ID3D12Device::CreateRootSignature übergeben werden kann.
Syntax
HRESULT D3D12SerializeVersionedRootSignature(
[in] const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *pRootSignature,
[out] ID3DBlob **ppBlob,
[out, optional] ID3DBlob **ppErrorBlob
);
Parameter
[in] pRootSignature
Typ: const D3D12_VERSIONED_ROOT_SIGNATURE_DESC*
Gibt einen D3D12_VERSIONED_ROOT_SIGNATURE_DESC an, der eine Beschreibung einer beliebigen Version einer Stammsignatur enthält.
[out] ppBlob
Typ: ID3DBlob**
Ein Zeiger auf einen Speicherblock, der einen Zeiger auf die ID3DBlob-Schnittstelle empfängt, mit dem Sie auf die serialisierte Stammsignatur zugreifen können.
[out, optional] ppErrorBlob
Typ: ID3DBlob**
Ein Zeiger auf einen Speicherblock, der einen Zeiger auf die ID3DBlob-Schnittstelle empfängt, mit dem Sie auf Serialisierungsfehlermeldungen zugreifen können, oder NULL , wenn keine Fehler vorliegen.
Rückgabewert
Typ: HRESULT
Gibt bei erfolgreicher Ausführung S_OK zurück. Gibt andernfalls einen der Direct3D 12-Rückgabecodes zurück.
Hinweise
Wenn eine Anwendung prozedural eine D3D12_ROOT_SIGNATURE_DESC1 Datenstruktur generiert, muss sie einen Zeiger auf diese D3D12_ROOT_SIGNATURE_DESC1 in einem Aufruf von D3D12SerializeVersionedRootSignature übergeben, um das serialisierte Formular zu erstellen. Die Anwendung übergibt dann das serialisierte Formular, auf das ppBlob auf ID3D12Device::CreateRootSignature zeigt.
Wenn ein Shader mit einer Stammsignatur erstellt wurde, enthält der kompilierte Shader bereits eine serialisierte Stammsignatur. Übergeben Sie in diesem Fall das kompilierte Shaderblob an ID3D12Device::CreateRootSignature , um das Laufzeitstammsignaturobjekt abzurufen.
Beachten Sie, dass Xbox-Entwicklern die Verwendung von HLSL-erstellten Stammsignaturen dringend empfohlen wird.
Die Funktionssignatur PFN_D3D12_SERIALIZE_VERSIONED_ROOT_SIGNATURE wird als Typedef bereitgestellt, sodass Sie dynamische Verknüpfungstechniken (GetProcAddress) anstelle einer statischen Verknüpfung verwenden können.
Diese Funktion wurde mit dem Windows 10 Anniversary Update (14393) veröffentlicht und ersetzt D3D12SerializeRootSignature.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d12.h |
Bibliothek | D3d12.lib |
DLL | D3d12.dll |