IDirect3D3::CreateVertexBuffer

The IDirect3D3::CreateVertexBuffer method creates a vertex buffer object.

HRESULT CreateVertexBuffer(
  LPD3DVERTEXBUFFERDESC lpVBDesc, 
  LPDIRECT3DVERTEXBUFFER* lpD3DVertexBuffer, 
  DWORD dwFlags,
  LPUNKNOWN pUnkOuter
);
 

Parameters

lpVBDesc
Address of a D3DVERTEXBUFFERDESC structure that describes the format and number of vertices that the vertex buffer will contain.
lpD3DVertexBuffer
Address of a variable that will contain a pointer to a IDirect3DVertexBuffer interface for the new vertex buffer.
dwFlags
Clipping flag value. Set this parameter to 0 to create a vertex buffer that can contain clipping information for untransformed or transformed vertices, or use the D3DDP_DONOTCLIP flag to create a vertex buffer that will contain transformed vertices, but no clipping information.
pUnkOuter
This parameter is provided for future compatibility with COM aggregation features. Currently, however, CreateVertexBuffer returns an error if this parameter is anything but NULL.

Return Values

If the method succeeds, the return value is D3D_OK.

If the method fails, the return value may be one of the following values:

CLASS_E_NOAGGREGATION
D3DERR_INVALIDVERTEXFORMAT
D3DERR_VBUF_CREATE_FAILED
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DDERR_OUTOFMEMORY

Remarks

This method was introduced with the IDirect3D3 interface.

QuickInfo

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in d3d.h.
  Import Library: Use ddraw.lib.

See Also

IDirect3DVertexBuffer, Vertex Buffers