Share via


D3DVERTEXBUFFER_DESC

This structure describes a vertex buffer.

typedef struct _D3DVERTEXBUFFER_DESC {
  D3DFORMAT Format;
  D3DRESOURCETYPE Type;
  DWORD Usage;
  D3DPOOL Pool;
  UINT Size;
  DWORD FVF;
} D3DVERTEXBUFFER_DESC;

Members

  • Format
    Member of the D3DFORMAT enumerated type, describing the surface format of the vertex buffer data.

  • Type
    Member of the D3DRESOURCETYPE enumerated type, identifying this resource as a vertex buffer.

  • Usage
    Combination of one or more of the following flags, specifying the usage for this resource.

    Flag Description
    D3DUSAGE_DONOTCLIP Set to indicate that the vertex buffer content will never require clipping.
    D3DUSAGE_DYNAMIC Set to indicate that the vertex buffer requires dynamic memory use. This is useful for drivers because it enables them to decide where to place the buffer. In general, static vertex buffers are placed in video memory and dynamic vertex buffers are placed in accelerated graphics port (AGP) memory. Note that there is no separate static use; if you do not specify D3DUSAGE_DYNAMIC, the vertex buffer is made static. D3DUSAGE_DYNAMIC is strictly enforced through the D3DLOCK_DISCARD and D3DLOCK_NOOVERWRITE locking flags. As a result, D3DLOCK_DISCARD and D3DLOCK_NOOVERWRITE are only valid on vertex buffers created with D3DUSAGE_DYNAMIC; they are not valid flags on static vertex buffers.

    For more information about using dynamic vertex buffers, see Using Dynamic Vertex and Index Buffers.

    Note that D3DUSAGE_DYNAMIC cannot be specified on managed vertex buffers. For more information, see Managing Resources.

    D3DUSAGE_RTPATCHES Not supported.
    D3DUSAGE_NPATCHES Not supported.
    D3DUSAGE_POINTS Set to indicate when the vertex buffer is to be used for drawing point sprites or indexed point lists.
    D3DUSAGE_SOFTWAREPROCESSING Set to indicate that the vertex buffer is to be used with software vertex processing.
    D3DUSAGE_WRITEONLY Informs the system that the application writes only to the vertex buffer. Using this flag enables the driver to choose the best memory location for efficient write operations and rendering. Attempts to read from a vertex buffer that is created with this capability can result in degraded performance.
  • Pool
    Member of the D3DPOOL enumerated type, specifying the class of memory allocated for this vertex buffer.

  • Size
    Size of the vertex buffer, in bytes.

  • FVF
    Combination of flexible vertex format flags that describes the vertex format of the vertices in this buffer.

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: D3d8types.h.

See Also

IDirect3DVertexBuffer8::GetDesc | Direct3D Structures

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.