D3D12_GLOBAL_ROOT_SIGNATURE 结构 (d3d12.h)

定义将用于关联着色器的全局根签名状态子对象。

语法

typedef struct D3D12_GLOBAL_ROOT_SIGNATURE {
  ID3D12RootSignature *pGlobalRootSignature;
} D3D12_GLOBAL_ROOT_SIGNATURE;

成员

pGlobalRootSignature

将充当全局根签名的根签名。 状态对象保存对此签名的引用。

备注

状态对象中是否存在此子对象是可选的。 与任何给定着色器函数关联的全局和/或本地根签名的组合必须定义着色器声明的所有资源绑定,并且全局和本地根签名之间没有重叠。

如果调用图中的任何给定函数与特定的全局根签名相关联,则图中的任何其他函数都必须与同一个全局根签名关联,或者没有关联,并且调用图) 根 (着色器条目必须与全局根签名相关联。

不同的着色器可以在状态对象内使用不同的全局根签名 (或没有) ,但是,在命令列表的特定 DispatchRays 操作期间引用的任何着色器都必须指定与命令列表中设置的相同全局根签名作为计算根签名。 因此,使用与着色器的不同子集关联的多个全局根签名定义单个大型状态对象是有效的。 应用不会因为某些着色器使用不同的全局根签名而被迫拆分其状态对象。

要求

   
标头 d3d12.h