D3D12CreateRootSignatureDeserializer 函式 (d3d12.h)
還原序列化根簽章,以便判斷配置定義 (D3D12_ROOT_SIGNATURE_DESC) 。
語法
HRESULT D3D12CreateRootSignatureDeserializer(
[in] LPCVOID pSrcData,
[in] SIZE_T SrcDataSizeInBytes,
[in] REFIID pRootSignatureDeserializerInterface,
[out] void **ppRootSignatureDeserializer
);
參數
[in] pSrcData
類型: LPCVOID
序列化根簽章之來源資料的指標。
[in] SrcDataSizeInBytes
類型: SIZE_T
pSrcData指向之記憶體區塊的大小,以位元組為單位。
[in] pRootSignatureDeserializerInterface
類型: REFIID
根簽章還原序列化程式介面的全域唯一識別碼 (GUID) 。 請參閱<備註>。
[out] ppRootSignatureDeserializer
類型: void**
記憶體區塊的指標,接收根簽章還原序列化程式的指標。
傳回值
類型: HRESULT
如果成功 , 則傳回S_OK;否則,會傳回其中一個 Direct3D 12 傳回碼。
備註
此函式已被 D3D12CreateVersionedRootSignatureDeserializer取代。
如果應用程式已經有序列化的根簽章,或具有包含根簽章且想要判斷配置定義的已編譯著色器,它可以呼叫 D3D12CreateRootSignatureDeserializer 來產生 ID3D12RootSignatureDeserializer 介面。 ID3D12RootSignatureDeserializer::GetRootSignature 可以傳回還原序列化的資料結構 (D3D12_ROOT_SIGNATURE_DESC) 。 ID3D12RootSignatureDeserializer 只會擁有還原序列化資料結構的記憶體存留期。
您可以使用 __uuidof () 宏,取得根簽章還原序列化程式的介面 REFIID或 GUID。 例如,__uuidof (ID3D12RootSignatureDeserializer) 會取得介面的 GUID 至根簽章還原序列化程式。
函式簽章PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER是以 typedef 的形式提供,因此您可以使用動態連結技術 (GetProcAddress) ,而不是靜態連結。
需求
目標平台 | Windows |
標頭 | d3d12.h |
程式庫 | D3D12.lib |
Dll | D3D12.dll |