圖形管線檢視器
[圖形管線階段] 視窗是 Visual Studio的其中一個圖形診斷工具,可以幫助您瞭解特定繪製事件是如何透過圖形管線移動。
這是圖形管線階段視窗:
了解圖形管線階段視窗
[圖形管線階段] 視窗可協助您分析每個階段的圖形管線 (套用至於已呈現的特定物件)之輸出。特別是,您可以識別資料解譯錯誤或轉換不正確的階段 (例如,您可以調查頂點著色器階段是否導致在幕後繪製物件)。當您找出發生問題的管線階段時,可以使用其他圖形的診斷工具檢查資料的解譯或轉換方式。管線階段出現的轉譯問題通常與不正確的頂點格式描述元、多 Bug 著色器程式設計或組態錯誤裝置狀態有關。
圖形管線階段
[圖形管線階段] 視窗只顯示在呼叫期間為使用中的管線階段之圖形資料。若要在 Visual Studio 中使用圖形工具檢查每個顯示階段的輸出,請在 [圖形管線階段] 視窗中選擇相關聯的縮圖。
[圖形管線階段] 視窗不支援計算著色器。
[輸入組件]
讀取應用程式提供的索引及頂點資料,並針對圖形硬體進行組合。縮圖會顯示組合端點的線框模型。對應至位置的端點資料由 POSITION 語意決定。如果輸入組合語言輸出沒有 POSITION 語意存在,則 [輸入組合語言] 階段不會顯示任何項目。您可以使用模型編輯器檢查 [輸入組件] 階段的輸出。端點著色器
處理頂點,這通常藉由執行如轉換、面板和光源等運算來進行。頂點著色器永遠接受一個頂點輸入並產生一個頂點輸出。縮圖會顯示轉換後幾何的線框影像。對應至位置的端點資料由 POSITION 或 SV_POSITION 語意決定。如果頂點著色器輸出沒有 POSITION 或 SV_POSITION 語意不存在,則 [端點著色器] 階段不會顯示任何項目。您可以使用 [影像編輯器] 檢查 [端點著色器] 階段的輸出。輪廓著色器
僅限 Direct3D 11。將幾何基本圖形 (例如,Quad、三角形或線條) 處理成低序位幾何修補檔,做為固定函式鑲嵌階段的輸入。[輪廓著色器] 不會顯示任何縮圖。網域著色器
僅限 Direct3D 11。處理固定函式鑲嵌階段輸出的細分頂點,類似於頂點著色器階段。[網域著色器] 階段不會顯示任何縮圖。幾何著色器
處理整個基本圖形 (點、線或三角形),以及相鄰基本圖形的選擇性頂點資訊。幾何著色器可以捨棄基本圖形或發出一個或多個基本圖形。縮圖會顯示轉換後幾何的線框影像。您可以使用 [影像編輯器] 檢查 [幾何著色器] 階段的輸出。像素著色引擎
處理插補的頂點資料以產生有色彩的像素。縮圖會顯示像素著色器輸出的影像。您可以使用 [影像編輯器] 檢查 [像素著色器] 階段的輸出。[輸出合併]
將各種著色器結果 (例如、像素著色器值和深度資訊) 與轉譯目標及緩衝區的內容,以及樣板資訊合併,以判斷轉譯目標受影響的情況。縮圖會顯示合併各種結果之後的產生目標內容的影像,以及所考量之模板緩衝區的內容。您可以使用影像編輯器檢查 [輸出合併] 階段的輸出。
檢視及偵錯著色器程式碼
您可以使用與著色器相關的管線階段下的控制項,以檢視 [端點著色器]、[輪廓著色器]、 [網域著色器]、 [幾何著色器] 或 [像素著色器] 的程式碼,或是進行偵錯。
檢視著色器的原始程式碼
- 在與所要檢視之著色器相關聯的管線階段下,選擇管線階段的標題 (例如,選擇 [頂點著色器]) 以檢視頂點著色器原始程式碼。
若要對著色器進行偵錯
- 在與所要偵錯之著色器相關聯的著色器階段下,管線階段標題下方,選擇 [開始偵錯]。這個 HLSL 偵錯工具進入點只能偵錯對應階段的第一個著色器引動過程,也就是第一個端點、基本型別,或是第一個處理的像素。這些著色器階段的其他引動過程,可以使用 [圖形像素歷史記錄] 來存取。
圖形裝置的連結
若要了解繪製呼叫為何以特定方式與圖形管線互動,您可能需要與目前裝置狀態相關的資訊。[圖形管線階段] 視窗提供與這項資訊的連結。