共用方式為


圖形物件表

[圖形物件表] 是 Visual Studio 中的圖形診斷工具之一,可協助您了解支援您的遊戲或應用程式之特定畫面格的 Direct3D 物件。

這是 [圖形物件表]:

已由應用程式建立的 Direct3D 物件。

注意事項注意事項

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

了解圖形物件表

藉由使用 [圖形物件表],您可以分析支援呈現特定畫面格的 Direct3D 物件。 您可以檢查特定物件的屬性和資料,以找出其呈現問題。 (提早使用其他圖形診斷工具來進行診斷,可以縮小非您預期之物件的清單。)當您發現不當的物件時,可以使用其類型專屬的視覺效果來加以檢查,例如,您可以使用影像編輯器來檢視紋理,或使用 [緩衝區視覺化檢視] 來檢視緩衝區內容。

[圖形物件表] 支援複製並貼上,讓您可以使用其他工具 (例如 Microsoft Excel) 來檢查其內容。

圖形物件表格式

[圖形物件表] 會顯示支援與所選事件相關聯之畫面格的 Direct3D 物件和資源,例如狀態物件、緩衝區、著色器、紋理和其他資源。 物件表會略過在先前畫面格中建立,但未於所擷取的畫面格期間使用的物件。 在後續事件中,將會略過在擷取的畫面格期間被先前事件損毀的物件。 未設定在 D3D10Device 或 D3D11DeviceContext 上的物件會以灰色文字顯示。 物件會以表格格式顯示。

Column

描述

識別碼

物件識別碼。

名稱

使用 Direct3D 函式 SetPrivateData 設定在物件上的應用程式特定資訊 (通常是為了提供物件的其他識別資訊)。

類型

物件類型。

作用中

針對在擷取的畫面格期間設定在 D3D10Device 或 D3D11DeviceContext 上的物件,會顯示 "*"。

這會對應至顯示為灰色文字的物件,但會提供資料行項目,可讓您用來協助排序物件表。

大小

物件大小 (以位元組為單位)。

格式

物件的格式。 例如,紋理物件的格式,或是著色器物件的著色器模型。

Mips

紋理物件具有的 MIP 層級數目。 不會套用到其他物件類型。

寬度

紋理物件的寬度。 不會套用到其他物件類型。

高度

紋理物件的高度。 不會套用到其他物件類型。

深度

3-D 紋理物件的深度。 如果紋理不是 3-D,則該值為 0。 不會套用到其他物件類型。

圖形物件檢視器

若要檢視物件的詳細資料,請在 [圖形物件表] 中選擇其名稱將其開啟。 物件的詳細資料會以不同格式顯示,視物件的類型而定。 例如,裝置狀態 (D3D10 裝置) 會顯示為已格式化清單,而紋理會以 [影像編輯器] 工具來顯示,並可修改和儲存。

裝置內容物件

裝置內容 (D3D11 裝置內容D3D10 裝置) 物件特別重要,因為它保存了最重要的狀態資訊,而且它會連結到目前設定的其他狀態物件。 裝置內容詳細資料會顯示在新的文件視窗中,而每種類別的資訊會顯示在其索引標籤上。 選取新的事件時裝置內容會變更,以反映目前的裝置狀態。

緩衝區物件

緩衝區物件詳細資料 (D3D11 緩衝區或 D3D10 緩衝區) 會顯示在新的文件視窗中,其中會顯示表格中的緩衝區內容,並提供介面變更緩衝區內容的顯示方式。 [緩衝區資料] 表格支援複製並貼上,讓您可以使用其他工具 (例如 Microsoft Excel) 來檢查其內容。 緩衝區的內容會依據 [格式] 下拉式方塊的值 (位於 [緩衝區資料] 表格上方) 來解譯。 在該方塊中,您可以輸入由下表列示之資料類型組成的複合資料格式。 例如,"float int" 會顯示一個結構清單,其中包含 32 位元浮點值,後面接著 32 位元帶正負號的整數值。 您所指定的複合資料格式會新增至下拉式方塊,以供日後使用。

類型

描述

float

32 位元浮點值。

float2

包含兩個 32 位元浮點值的向量。

float3

包含三個 32 位元浮點值的向量。

float4

包含四個 32 位元浮點值的向量。

byte

8 位元帶正負號的整數值。

2byte

16 位元帶正負號的整數值。

4byte

32 位元帶正負號的整數值。 與 int 相同。

8byte

64 位元帶正負號的整數值。 與 int64 相同。

xbyte

8 位元的十六進位值。

x2byte

16 位元的十六進位值。

x4byte

32 位元的十六進位值。 與 xint 相同。

x8byte

64 位元的十六進位值。 與 xint64 相同。

ubyte

8 位元不帶正負號的整數值。

u2byte

16 位元不帶正負號的整數值。

u4byte

32 位元不帶正負號的整數值。 與 uint 相同。

u8byte

64 位元不帶正負號的整數值。 與 uint64 相同。

half

16 位元浮點值。

half2

包含兩個 16 位元浮點值的向量。

half3

包含三個 16 位元浮點值的向量。

half4

包含四個 16 位元浮點值的向量。

double

64 位元浮點值。

int

32 位元帶正負號的整數值。 與 4byte 相同。

int64

64 位元帶正負號的整數值。 與 8byte 相同。

xint

32 位元的十六進位值。 與 x4byte 相同。

xint64

64 位元的十六進位值。 與 x8byte 相同。

uint

32 位元不帶正負號的整數值。 與 u4byte 相同。

uint64

64 位元不帶正負號的整數值。 與 u8byte 相同。

bool

布林 (true 或 false) 值。 每個布林值會以 32 位元值表示。

請參閱

工作

逐步解說:因裝置狀態而遺漏的物件

其他資源

偵錯 DirectX 圖形