頂点バッファーとインデックス バッファーVertex and index buffers

"頂点バッファー" は、頂点データを格納するメモリ バッファーです。頂点バッファー内の頂点は、変換、照明の適用、クリッピングを実行するために処理されます。Vertex buffers are memory buffers that contain vertex data; vertices in a vertex buffer are processed to perform transformation, lighting, and clipping. インデックス バッファーは、インデックス データを含むメモリ バッファーであり、プリミティブのレンダリングに使用される、頂点バッファーへの整数オフセットです。Index buffers are memory buffers that contain index data, which are integer offsets into vertex buffers, used to render primitives.

頂点バッファーには、レンダリング可能な任意の種類の頂点を含めることができます。変換済みでも未変換でも、照明が適用済みでも未適用でもかまいません。Vertex buffers can contain any vertex type - transformed or untransformed, lit or unlit - that can be rendered. 頂点バッファー内の頂点を処理して、変換、照明の適用、クリッピング フラグの生成などの操作を実行できます。You can process the vertices in a vertex buffer to perform operations such as transformation, lighting, or generating clipping flags. 変換は常に実行されます。Transformation is always performed.

頂点バッファーは柔軟なため、変換されたジオメトリを再利用するための最適なステージング ポイントとなります。The flexibility of vertex buffers make them ideal staging points for reusing transformed geometry. 1 つの頂点バッファーを作成し、その中の頂点に対して変換、照明、クリッピングを適用したら、そのモデルを必要に応じて何度でも、再変換なしでシーンにレンダリングできます。途中でレンダリング状態が変更されたとしても、再変換を行う必要はありません。You could create a single vertex buffer, transform, light, and clip the vertices in it, and render the model in the scene as many times as needed without re-transforming it, even with interleaved render state changes. これは、複数のテクスチャを使うモデルをレンダリングする場合に便利です。ジオメトリを 1 回だけ変換すれば、必要なテクスチャの変更を加えながら、変換したジオメトリの一部を必要に応じてレンダリングすることができます。This is useful when rendering models that use multiple textures: the geometry is transformed only once, and then portions of it can be rendered as needed, interleaved with the required texture changes. 頂点の処理後に行われたレンダリング状態の変更は、次に頂点が処理されるときに反映されます。Render state changes made after vertices are processed take effect the next time the vertices are processed.

このセクションの内容In this section

トピックTopic 説明Description

バッファーの概要Introduction to buffers

バッファー リソースは完全に型指定されたデータのコレクションであり、要素にグループ化されます。A buffer resource is a collection of fully typed data, grouped into elements. バッファーには、頂点バッファー 内のテクスチャ座標、インデックス バッファー内のインデックス、定数バッファー内のシェーダー定数データ、位置ベクトル、法線ベクトル、デバイスの状態などのデータが格納されます。Buffers store data, such as texture coordinates in a vertex buffer, indexes in an index buffer, shader constants data in a constant buffer, position vectors, normal vectors, or device state.

インデックス バッファーIndex buffers

インデックス バッファーは、インデックス データを含むメモリ バッファーであり、プリミティブのレンダリングに使用される、頂点バッファーへの整数オフセットです。Index buffers are memory buffers that contain index data, which are integer offsets into vertex buffers, used to render primitives.

 

関連トピックRelated topics

Direct3D グラフィックス学習ガイドDirect3D Graphics Learning Guide