IDirect3DDevice9::DrawPrimitive method

Renders a sequence of nonindexed, geometric primitives of the specified type from the current set of data input streams.

Syntax

HRESULT DrawPrimitive(
  D3DPRIMITIVETYPE PrimitiveType,
  UINT             StartVertex,
  UINT             PrimitiveCount
);

Parameters

PrimitiveType

Type: D3DPRIMITIVETYPE

Member of the D3DPRIMITIVETYPE enumerated type, describing the type of primitive to render.

StartVertex

Type: UINT

Index of the first vertex to load. Beginning at StartVertex the correct number of vertices will be read out of the vertex buffer.

PrimitiveCount

Type: UINT

Number of primitives to render. The maximum number of primitives allowed is determined by checking the MaxPrimitiveCount member of the D3DCAPS9 structure. PrimitiveCount is the number of primitives as determined by the primitive type. If it is a line list, each primitive has two vertices. If it is a triangle list, each primitive has three vertices.

Return Value

Type: HRESULT

If the method succeeds, the return value is D3D_OK. If the method fails, the return value can be D3DERR_INVALIDCALL.

Remarks

When converting a legacy application to Direct3D 9, you must add a call to either IDirect3DDevice9::SetFVF to use the fixed function pipeline, or IDirect3DDevice9::SetVertexDeclaration to use a vertex shader before you make any Draw calls.

Requirements

   
Target Platform Windows
Header d3d9.h (include D3D9.h)
Library D3D9.lib

See Also

IDirect3DDevice9

IDirect3DDevice9::DrawIndexedPrimitive

Rendering from Vertex and Index Buffers (Direct3D 9)