D3D11DDIARG_TESSELLATION_IO_SIGNATURES 结构 (d3d10umddi.h)
D3D11DDIARG_TESSELLATION_IO_SIGNATURES 结构描述分割 I/O 签名。
语法
typedef struct D3D11DDIARG_TESSELLATION_IO_SIGNATURES {
[in] D3D10DDIARG_SIGNATURE_ENTRY *pInputSignature;
[in] UINT NumInputSignatureEntries;
[in] D3D10DDIARG_SIGNATURE_ENTRY *pOutputSignature;
[in] UINT NumOutputSignatureEntries;
[in] D3D10DDIARG_SIGNATURE_ENTRY *pPatchConstantSignature;
[in] UINT NumPatchConstantSignatureEntries;
} D3D11DDIARG_TESSELLATION_IO_SIGNATURES;
成员
[in] pInputSignature
签名的输入部分的 D3D10DDIARG_SIGNATURE_ENTRY 结构的数组。
[in] NumInputSignatureEntries
pInputSignature 成员指定的数组中的条目数。
[in] pOutputSignature
签名输出部分的 D3D10DDIARG_SIGNATURE_ENTRY 结构的数组。
[in] NumOutputSignatureEntries
pOutputSignature 成员指定的数组中的条目数。
[in] pPatchConstantSignature
签名修补程序 的D3D10DDIARG_SIGNATURE_ENTRY 结构的数组。
[in] NumPatchConstantSignatureEntries
pPatchConstantSignature 成员指定的数组中的条目数。
注解
签名基本上是共享签名的任何着色器输入和输出的所有寄存器的并集。 因此,签名可能是给定着色器实际可能输入或输出的内容的超集。
硬件应确定管道中的上游阶段可能在签名中提供部分或全部数据,这些数据布局为 pInputSignature 和 NumInputSignatureEntries 成员指定。 同样,硬件应确定管道中的下游阶段可能会使用 pOutputSignature 和 NumInputSignatureEntries 成员指定的签名中的部分或所有数据。
为了符合在着色器编译期间对事件输入和输出寄存器重新排序的要求,将完整签名传递给驱动程序。 这种重新排序可能取决于驱动程序能否确定签名中的所有寄存器,以及哪些寄存器具有系统名称 (例如,D3D10DDIARG_SIGNATURE_ENTRY 结构的 SystemValue 成员指定) 的名称。 这种重新排序可能还取决于驱动程序能否确定当前着色器中不存在的寄存器。
着色器代码本身中的声明还显示特定着色器实际使用的寄存器。 这些寄存器可能是签名的输入和输出部分的子集。 如果在编译时不需要某些硬件对输入和输出寄存器重新排序,该硬件的驱动程序可以完全忽略D3D11DDIARG_TESSELLATION_IO_SIGNATURES结构提供的完整签名。 例如,参考光栅器不需要D3D11DDIARG_TESSELLATION_IO_SIGNATURES结构提供的信息。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 7 操作系统开始支持D3D11DDIARG_TESSELLATION_IO_SIGNATURES。 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |