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