共用方式為


圖形管線階段

[圖形管線階段] 視窗是 Visual Studio 中的圖形診斷工具之一,可以幫助您了解特定的繪製事件如何在圖形管線中移動。

這是 [圖形管線階段] 視窗:

3D 物件會經過管線階段。

注意事項注意事項

從 Visual Studio 2013 Update 3 開始,圖形診斷工具視窗皆裝載在 Visual Studio Shell 的獨立複本中。這個自訂殼層稱為「圖形分析」,它會消除不必要的功能表和選項,除此以外,[圖形管線階段] 視窗和工作流程都和之前一樣。如需此變更的詳細資訊,請參閱 圖形診斷概觀

了解圖形管線階段視窗

[圖形管線階段] 視窗可協助您分析套用至所呈現之特定物件的圖形管線各階段輸出。 特別是,您可以識別資料錯譯或轉換錯誤的階段,例如,您可以調查頂點著色器階段是否導致物件繪製到螢幕外。 當您找出發生問題的管線階段時,可以使用其他圖形診斷工具來檢查資料解譯或轉換的方式。 出現在管線階段的呈現問題,通常與下列項目有關:不正確的頂點格式描述元、有錯誤的著色器程式,或是設定錯誤的裝置狀態。

圖形管線階段

[圖形管線階段] 視窗只會顯示在繪製呼叫期間作用之管線階段的圖形資料。 若要使用 Visual Studio 中的圖形工具來檢查所顯示之每個階段的輸出,請在 [圖形管線階段] 視窗中選擇相關聯的縮圖。

[圖形管線階段] 視窗中不支援計算著色器。

  • 輸入組合語言
    讀取應用程式所提供的索引和頂點資料,並針對圖形硬體將其組合。 縮圖會顯示組合頂點的線框模型。 對應至位置的頂點資料是由 POSITION 語意決定。 如果 POSITION 語意不存在於輸入組合語言的輸出中,[輸入組合語言] 階段就不會顯示任何內容。 您可以使用模型編輯器來檢查 [輸入組合語言] 階段的輸出。

  • 頂點著色器
    處理頂點,通常是藉由執行轉換、面板設定和光源設定之類的作業來處理。 頂點著色器一律會採用一個頂點輸入,並產生一個頂點輸出。 縮圖會顯示轉換後的幾何圖形的線框影像。 對應至位置的頂點資料是由 POSITION 或 SV_POSITION 語意決定。 如果 POSITION 或 SV_POSITION 語意未出現在頂點著色器輸出中,[頂點著色器] 階段就不會顯示任何內容。 您可以使用影像編輯器來檢查 [頂點著色器] 階段的輸出。

  • 輪廓著色器
    僅限 Direct3D 11。 將幾何基本項目 (例如四邊形、三角,或線條) 處理至做為固定函式鑲嵌式階段輸入的低序位幾何修補程式中。 [輪廓著色器] 沒有可顯示的縮圖。

  • 網域著色器
    僅限 Direct3D 11。 處理固定函式鑲嵌式階段所輸出的細分頂點,類似頂點著色器階段。 [網域著色器] 沒有可顯示的縮圖。

  • 幾何著色器
    處理整個基本項目 — 點、線條或三角形 — 以及相鄰基本項目的選擇性頂點資訊。 幾何著色器可以捨棄基本項目,或發出一或多個新的基本項目。 縮圖會顯示轉換後的幾何圖形的線框影像。 您可以使用影像編輯器來檢查 [幾何著色器] 階段的輸出。

  • 像素著色器
    處理插入的頂點資料,以產生彩色像素。 縮圖會顯示像素著色器輸出的影像。 您可以使用影像編輯器來檢查 [像素著色器] 階段的輸出。

  • 輸出合併
    將各種類型的著色器結果 (例如,像素著色器值和深度資訊) 與呈現目標和深度緩衝區的內容,以及樣板緩衝區資訊合併在一起,以判斷呈現目標受到什麼影響。 在將各種結果合併,並考量過樣板緩衝區的內容之後,縮圖會顯示呈現目標內容的影像。 您可以使用影像編輯器來檢查 [輸出合併] 階段的輸出。

檢視及偵錯著色器程式碼

您可以使用與著色器相關聯之管線階段下面的控制項來檢視 [頂點著色器]、[輪廓著色器]、[網域著色器]、[幾何著色器] 或 [像素著色器] 的程式碼,或進行偵錯。

檢視著色器的原始程式碼

  • 在與您想要檢視之著色器相關聯的管線階段下面,選擇管線階段的標題,例如選擇 [頂點著色器],以檢視頂點著色器原始程式碼。

偵錯著色器

  • 在與您想要偵錯之著色器相關聯的著色器階段下面,選擇管線階段標題下方的 [開始偵錯]。 這個 HLSL 偵錯工具的進入點只會偵錯對應階段的第一個著色器引動過程,也就是所處理的第一個頂點、基本項目或像素。 若要存取這些著色器階段的其他引動過程,可以使用 [圖形像素歷史記錄]。

連結至圖形裝置

若要了解為什麼繪製呼叫會以特定方式來與圖形管線互動,您可能需要目前裝置狀態的相關資訊。 [圖形管線階段] 視窗會提供這項資訊的連結。

請參閱

工作

逐步解說:因端點著色而遺漏的物件

逐步解說:偵錯因著色而產生的顯示錯誤