D3D12CreateRootSignatureDeserializer-Funktion (d3d12.h)
Deserialisiert eine Stammsignatur, damit Sie die Layoutdefinition (D3D12_ROOT_SIGNATURE_DESC) bestimmen können.
Syntax
HRESULT D3D12CreateRootSignatureDeserializer(
[in] LPCVOID pSrcData,
[in] SIZE_T SrcDataSizeInBytes,
[in] REFIID pRootSignatureDeserializerInterface,
[out] void **ppRootSignatureDeserializer
);
Parameter
[in] pSrcData
Typ: LPCVOID
Ein Zeiger auf die Quelldaten für die serialisierte Stammsignatur.
[in] SrcDataSizeInBytes
Typ: SIZE_T
Die Größe des Speicherblocks in Bytes, auf den pSrcData verweist.
[in] pRootSignatureDeserializerInterface
Typ: REFIID
Die GUID (Globally Unique Identifier) für die Deserialisiererschnittstelle der Stammsignatur. Siehe Bemerkungen.
[out] ppRootSignatureDeserializer
Typ: void**
Ein Zeiger auf einen Speicherblock, der einen Zeiger auf den Stammsignatur-Deserialisierer empfängt.
Rückgabewert
Typ: HRESULT
Gibt bei erfolgreicher Ausführung S_OK zurück. Gibt andernfalls einen der Direct3D 12-Rückgabecodes zurück.
Hinweise
Diese Funktion wurde durch D3D12CreateVersionedRootSignatureDeserializer ersetzt.
Wenn eine Anwendung bereits über eine serialisierte Stammsignatur verfügt oder über einen kompilierten Shader verfügt, der eine Stammsignatur enthält und die Layoutdefinition bestimmen möchte, kann sie D3D12CreateRootSignatureDeserializer aufrufen, um eine ID3D12RootSignatureDeserializer-Schnittstelle zu generieren. ID3D12RootSignatureDeserializer::GetRootSignature kann die deserialisierte Datenstruktur (D3D12_ROOT_SIGNATURE_DESC) zurückgeben. ID3D12RootSignatureDeserializer besitzt nur die Lebensdauer des Arbeitsspeichers für die deserialisierte Datenstruktur.
Die REFIID oder GUID der Schnittstelle zum Stammsignatur-Deserialisierer kann mithilfe des Makros __uuidof() abgerufen werden. Beispielsweise ruft __uuidof(ID3D12RootSignatureDeserializer) die GUID der Schnittstelle in einen Stammsignatur-Deserialisierer ab.
Die Funktionssignatur PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER wird als Typedef bereitgestellt, sodass Sie dynamische Verknüpfungstechniken (GetProcAddress) anstelle einer statischen Verknüpfung verwenden können.
Anforderungen
Zielplattform | Windows |
Kopfzeile | d3d12.h |
Bibliothek | D3D12.lib |
DLL | D3D12.dll |