Share via


インデックス バッファー

DirectX 8.0 では、インデックス バッファーの概念が導入されています。 これらのバッファーは頂点バッファーとよく似ていますが、頂点データ自体ではなく、単純な 16 または 32 ビットのインデックスを頂点データに格納します。 インデックス バッファーは、最適なダウンロードやキャッシュなどの頂点バッファーのすべての利点を拡張して、データのインデックスを作成します。

インデックス バッファーは、頂点バッファーに使用されるものと同じドライバー エントリ ポイントを使用して作成、ロック、ロック解除、破棄されます。 ドライバーは、新しいサーフェス機能ビット DDSCAPS2_INDEXBUFFERを使用して、これらのバッファーの種類を区別できます。 インデックス バッファーの場合、このフラグは、サーフェス DD_SURFACE_MORE の構造体の ddsCapsEx.dwCaps2 フィールドに設定されます。 頂点バッファーの場合は明確になります。

他の多くのサーフェスの種類とは異なり、ドライバーは、インデックス バッファーの作成、破棄、ロックのドライバー呼び出しを受け取るために、ランタイムにその機能を報告するときにDDSCAPS2_INDEXBUFFER機能を設定する必要はありません。 頂点バッファーをサポートする DirectX 8.0 ドライバーは、インデックス バッファーもサポートしていると見なされます。 基になるハードウェアがインデックス バッファーを直接サポートしていない場合、ドライバーは、サーフェスのシステム メモリを割り当てることによってインデックス バッファーの作成を処理する必要があります。