Vertex Buffers
A version of this page is also available for
4/8/2010
Vertex buffers, represented by the IDirect3DMobileVertexBuffer interface, are memory buffers that contain vertex data. Vertex buffers can contain any vertex type — transformed or untransformed, lit or unlit — that can be rendered through the use of the rendering methods in the IDirect3DMobileDevice interface. 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. 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 retransforming it, even with interleaved render state changes. 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. For more information, see Processing Vertices.
The following topics provide additional information about vertex buffers.
- Vertex Buffer Descriptions
- Pool and Usage for Vertex Buffers
- FVF Vertex Buffers
- Device Types and Vertex Processing Requirements
- Using Vertex Buffers