PFND3D12DDI_GET_SHADER_IDENTIFIER_0054回调函数 (d3d12umddi.h)

检索可在着色器记录中使用的着色器的唯一标识符。

语法

PFND3D12DDI_GET_SHADER_IDENTIFIER_0054 Pfnd3d12ddiGetShaderIdentifier0054;

void * Pfnd3d12ddiGetShaderIdentifier0054(
  D3D12DDI_HSTATEOBJECT_0054 unnamedParam1,
  LPCWSTR pExportName
)
{...}

参数

unnamedParam1

状态对象的句柄。 状态对象可以是集合或光线跟踪管道状态对象。

pExportName

要为其检索标识符的状态对象中的入口点。

返回值

返回指向着色器标识符的指针。 如果在状态对象中未完全解析着色器,则返回值为 nullptr。

注解

只要其来自的状态对象有效,返回数据就有效。 返回的数据的大小由 GetShaderStackSize 回调函数提供。 如果需要多次检索,应用程序应复制和缓存此数据,以避免在状态对象中搜索这些数据的成本。 标识符实际使用的位置位于 GPU 内存中的着色器表中的着色器记录中,由应用填充。

数据本身全局标识着色器,因此,即使着色器以不同的状态对象出现, (与任何根签名) 的关联相同,它也具有相同的标识符。

要求

要求
最低受支持的客户端 Windows 10 版本 1809
标头 d3d12umddi.h