D3D12_VIEW_INSTANCING_TIER列舉 (d3d12.h)

表示支持檢視實例的階層層級。

Syntax

typedef enum D3D12_VIEW_INSTANCING_TIER {
  D3D12_VIEW_INSTANCING_TIER_NOT_SUPPORTED = 0,
  D3D12_VIEW_INSTANCING_TIER_1 = 1,
  D3D12_VIEW_INSTANCING_TIER_2 = 2,
  D3D12_VIEW_INSTANCING_TIER_3 = 3
} ;

常數

 
D3D12_VIEW_INSTANCING_TIER_NOT_SUPPORTED
值: 0
不支持檢視實例。
D3D12_VIEW_INSTANCING_TIER_1
值: 1
僅繪製呼叫層級迴圈支持檢視實例。
D3D12_VIEW_INSTANCING_TIER_2
值: 2
在最差的情況下,繪製呼叫層級迴圈可支持檢視實例,但在架構相依的特定情況下,GPU 可以更有效率地執行檢視實例。
D3D12_VIEW_INSTANCING_TIER_3
值: 3
支持檢視實例,而且實例是從參考SV_ViewID的第一個著色器階段開始,如果沒有SV_ViewID著色器階段參考,則為點陣化。 這表示在檢視實例不相依於SV_ViewID時,會消除多餘的工作。 點陣化之前,不會直接相依於SV_ViewID的工作會在所有檢視之間共用;每個檢視只會重複相依於SV_ViewID的工作。

注意 如果殼層著色器產生相依於SV_ViewID的鑲嵌因數,則鑲嵌和所有後續工作都必須重複每個檢視。 同樣地,如果幾何著色器所產生的幾何數量取決於SV_ViewID,則必須先重複每個檢視幾何著色器,再繼續進行點陣化。

 

檢視實例遮罩只會影響是否執行直接相依於SV_ViewID的工作,而不是每個檢視) (整個循環反覆專案。 如果檢視實例遮罩不是 0,某些相依於SV_ViewID的工作可能仍會在遮罩關閉的圖元上執行,但不會有外部可見的效果;例如,不會執行任何 UAV 寫入,也不會叫用裁剪/點陣化。 如果檢視實例遮罩為 0,則不會執行任何工作,包括不相依於SV_ViewID的工作。

規格需求

需求
標頭 d3d12.h

另請參閱

核心列舉