Freigeben über


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

Weitere Informationen

Kernfunktionen

Erstellen einer Stammsignatur