D3D12CreateVersionedRootSignatureDeserializer 函数 (d3d12.h)
生成一个接口,该接口可以通过 GetUnconvertedRootSignatureDesc 返回反序列化的数据结构。
语法
HRESULT D3D12CreateVersionedRootSignatureDeserializer(
[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 以生成 ID3D12VersionedRootSignatureDeserializer 接口。 ID3D12VersionedRootSignatureDeserializer::GetRootSignatureDescAtVersion 可以返回反序列化的数据结构 (D3D12_ROOT_SIGNATURE_DESC1) 。 ID3D12VersionedRootSignatureDeserializer 仅拥有反序列化数据结构的内存生存期。
可以使用 __uuidof () 宏获取根签名反序列化程序的接口的 REFIID 或 GUID。 例如,__uuidof (ID3D12VersionedRootSignatureDeserializer) 将获取根签名反序列化程序的接口的 GUID 。
函数签名PFN_D3D12_CREATE_ROOT_SIGNATURE_DESERIALIZER作为 typedef 提供,因此可以使用动态链接技术 (GetProcAddress) 而不是静态链接。
此函数取代 D3D12CreateRootSignatureDeserializer。
要求
目标平台 | Windows |
标头 | d3d12.h |
Library | D3d12.lib |
DLL | D3d12.dll |