D3DINDEXBUFFER_DESC 結構
描述索引緩衝區。
語法
typedef struct D3DINDEXBUFFER_DESC {
D3DFORMAT Format;
D3DRESOURCETYPE Type;
DWORD Usage;
D3DPOOL Pool;
UINT Size;
} D3DINDEXBUFFER_DESC, *LPD3DINDEXBUFFER_DESC;
成員
-
格式
-
類型: D3DFORMAT
-
D3DFORMAT列舉型別的成員,描述索引緩衝區資料的介面格式。
-
類型
-
類型: D3DRESOURCETYPE
-
D3DRESOURCETYPE列舉型別的成員,將此資源識別為索引緩衝區。
-
使用量
-
類型: DWORD
-
下列一或多個旗標的組合,指定此資源的使用量。
值 意義 - D3DUSAGE_DONOTCLIP
設定為 ,表示索引緩衝區內容永遠不會需要裁剪。 - D3DUSAGE_DYNAMIC
設定為 ,表示索引緩衝區需要使用動態記憶體。 這適用于驅動程式,因為它可讓他們決定要放置緩衝區的位置。 一般而言,靜態索引緩衝區會放在視訊記憶體中,而動態索引緩衝區則會放在 AGP 記憶體中。 請注意,沒有個別的靜態使用方式;如果您未指定D3DUSAGE_DYNAMIC索引緩衝區是靜態的。 D3DUSAGE_DYNAMIC會透過D3DLOCK_DISCARD和D3DLOCK_NOOVERWRITE鎖定旗標嚴格強制執行。 因此,D3DLOCK_DISCARD和D3DLOCK_NOOVERWRITE只有在使用 D3DUSAGE_DYNAMIC 建立的索引緩衝區上才有效;它們不是靜態頂點緩衝區上的有效旗標。
如需使用動態索引緩衝區的詳細資訊,請參閱 使用動態頂點和索引緩衝區。
請注意,無法在 Managed 索引緩衝區上指定D3DUSAGE_DYNAMIC。 如需詳細資訊,請參閱 管理資源 (Direct3D 9) 。- D3DUSAGE_RTPATCHES
設定為 ,指出索引緩衝區何時要用於繪製高階基本類型。 - D3DUSAGE_NPATCHES
設定以指出索引緩衝區何時要用於繪製 N 個修補程式。 - D3DUSAGE_POINTS
設定為 ,指出索引緩衝區何時要用於繪製點 Sprite 或索引點清單。 - D3DUSAGE_SOFTWAREPROCESSING
設定為 ,表示緩衝區要與軟體處理搭配使用。 - D3DUSAGE_WRITEONLY
通知系統應用程式只會寫入索引緩衝區。 使用此旗標可讓驅動程式選擇最佳的記憶體位置,以便有效率的寫入作業和轉譯。 嘗試從使用這項功能建立的索引緩衝區讀取可能會導致效能降低。 -
集區
-
類型: D3DPOOL
-
D3DPOOL列舉型別的成員,指定為此索引緩衝區配置的記憶體類別。
-
大小
-
類型: UINT
-
索引緩衝區的大小,以位元組為單位。
規格需求
需求 | 值 |
---|---|
標頭 |
|
另請參閱