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 (include D3d10umddi.h) |