圖形事件清單
[圖形事件清單] 是 Visual Studio的其中一種圖形診斷工具,可以協助您探索發生於遊戲或應用程式期間特定框架中的 Direct3D 事件,並分析其作用。這包括支援建立裝置或物件之類的事件。
這是圖形事件清單:
巡覽圖形事件清單
因為一般遊戲或應用程式中的一個框架就可以產生如此多的 Direct3D 事件,[圖形事件清單] 的功能可協助您快速找到重要事件和相關資訊。
為減少 [圖形事件清單],中不重要的事件,因此省略了 AddRef 和 Release 事件,而且您可以一次一個按名稱篩選事件 (如前一個範例所示,篩選後會顯示名稱中有 Vertex 的事件),也可以使用分號分隔的關鍵字清單 (例如「Draw;Primitive」) 顯示名稱中有 Draw 或 Primitive 的事件。
![]() |
---|
篩選清單為空白 (例如敏感的,繪製; 原始」和「繪製;原始」不同。 |
so that you can find and move between them quickly.因為 Draw 呼叫是特別重要的事件,[圖形事件清單] 會提供 [移至下一個繪製呼叫] 和 [移至上一個繪製呼叫] 按鈕,這些按鈕位於視窗的左上角,以便您在這些事件之間快速尋找並移動。
事件分類
在 [圖形事件清單] 顯示的事件分成四類;三類表示個別事件,第四類是用來表示群組相關事件。每個事件會與表示其所屬分類的圖示一起顯示。
分類 |
描述 |
---|---|
|
標記在擷取框架期間,發生繪製事件。 |
|
標記擷取的框架之前發生的事件 (例如,建立裝置或物件)。 |
|
標記單一事件或相關事件的群組,如所定義的應用程式。群組可以展開表示事件,包括。 |
框架內和框架前事件會內建至 Direct3D 執行階段,且會對應到 Direct3D 應用程式開發介面呼叫。您不需要做任何動作即可啟用這些事件。
使用者定義的事件和群組專屬於特定應用程式。您可以使用使用者定義的事件強調應用程式中發生的事件,以便將這些事件與 [圖形事件清單] 中的圖形事件建立關聯性。例如,您可以在繪製特定類型的物件時使用標記,讓您可以在 [圖形事件清單] 中輕鬆地找到其繪製呼叫。您可以使用使用者定義的事件群組,將相關事件組織成群組或階層,讓您更輕鬆地瀏覽 [圖形事件清單] 。例如,您可以群組與介面轉譯相關的事件。
若要在應用程式中建立使用者定義的事件標記和使用者定義的事件群組,請使用用於標記事件及群組以用於其他 Direct3D 工具的應用程式開發介面。在 Direct3D 11.1 中,屬於 Direct3D 舊版之 ID3DUserDefinedAnnotation 介面的應用程式開發介面會使用應用程式開發介面的 D3DPERF_ 家族。
應用程式開發介面描述 |
應用程式開發介面 (Direct3D 11.1) |
應用程式開發介面 (Direct3D 11.0 及較舊版本) |
---|---|---|
開始使用者定義的事件群組 |
ID3DUserDefinedAnnotation::BeginEvent |
D3DPerf_BeginEvent |
結束使用者定義的事件群組 |
ID3DUserDefinedAnnotation::EndEvent |
D3DPerf_EndEvent |
建立使用者定義的事件標記 |
ID3DUserDefinedAnnotation::SetMarker |
D3DPerf_SetMarker |
圖形物件的連結
若要了解圖形事件,您可能需要與目前裝置狀態或事件所參考之 Direct3D 物件相關的其他資訊。[圖形事件清單] 針對每一個事件提供這項資訊的連結。
使用圖形事件清單尋找呈現問題。
使用 [圖形事件清單] 搭配其他圖形診斷工具,您可以精確找出特定 Direct3D 事件的轉譯問題。當您找出初次發生問題的事件時,可以使用其他圖形診斷工具判斷問題的原因。
對於遺漏物件的轉譯問題 (也就是,物件沒有在您所預期的位置顯示),您可以使用 [圖形事件清單] 搭配 [圖形管線階段] 視窗。當您選取事件清單中的 Draw 或 Dispatch 事件時,[圖形管線階段] 視窗會顯示管線每個階段之事件的效果。逐步執行這些事件和檢視管線階段,您可以偵測到物件在何時轉譯,即使其未顯示在轉譯目標上。
進一步了解每個影像之替代文字的呈現問題無效的是,物件存在,不過,有無效的外觀。您可以使用 [圖形事件清單] 檢查圖形記錄中擷取的事件。當您選取事件清單中 Draw 或 Dispatch 事件時, Visual Studio 會顯示呈現目標,它存在時,會發生事件。逐步執行這些事件和檢視呈現目標如何在圖形記錄文件視窗變更,您可以觀察特定事件的效果進而了解最終如何呈現目標由轉換錯誤如何造成的是互動式不同的事件在轉譯目標的許多事件有時候增強。