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
pPatchConstantSignatur e 成員所指定之陣列中的項目數。
言論
簽章基本上是共用簽章的任何著色器所輸入和輸出之所有緩存器的聯集。 因此,簽章可能是指定著色器實際輸入或輸出的超集。
硬體應該判斷管線中的上游階段可能會提供在簽章中配置為 pInputSignature 的部分或所有數據,NumInputSignatureEntries 成員指定。 同樣地,硬體應該判斷管線中的下游階段可能會取用簽章中配置為 pOutputSignature 和 NumInputSignatureEntries 成員指定的部分或所有數據。
為了符合在著色器編譯期間重新排序事件輸入和輸出緩存器的需求,完整簽章會傳遞至驅動程式。 這類重新排序可能會取決於驅動程式能夠判斷簽章中的所有緩存器,以及哪些緩存器具有系統名稱(例如,SystemValue 結構 D3D10DDIARG_SIGNATURE_ENTRY 的成員所指定的名稱)。 這類重新排序也可能取決於驅動程式能夠判斷目前著色器中不存在的緩存器。
著色器程序代碼本身內的宣告也會顯示特定著色器實際使用哪些緩存器。 這些快取器可能是簽章之輸入和輸出部分的子集。 如果某些硬體不需要在編譯階段重新排序輸入和輸出緩存器,該硬體的驅動程式可以完全忽略D3D11DDIARG_TESSELLATION_IO_SIGNATURES結構提供的完整簽章。 例如,參考轉譯器不需要D3D11DDIARG_TESSELLATION_IO_SIGNATURES結構提供的資訊。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 7作系統開始,支援D3D11DDIARG_TESSELLATION_IO_SIGNATURES。 |
標頭 | d3d10umddi.h (包括 D3d10umddi.h) |