Microsoft DirectX 9.0

IDirect3DDevice9::DrawPrimitive Method

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


HRESULT DrawPrimitive(      

    D3DPRIMITIVETYPE PrimitiveType,     UINT StartVertex,     UINT PrimitiveCount );


[in] Member of the D3DPRIMITIVETYPE enumerated type, describing the type of primitive to render.
[in] Index of the first vertex to load. Beginning at StartVertex the correct number of vertices will be read out of the vertex buffer.
[in] 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

If the method succeeds, the return value is D3D_OK.

If the method fails, the return value can be

D3DERR_INVALIDCALLThe method call is invalid. For example, a method's parameter may have an invalid value.


IDirect3DDevice9::DrawPrimitive should not be called with a single triangle at a time.

When converting a fixed function legacy application to Microsoft?DirectX?9.0, you must add a call to IDirect3DDevice9::SetFVF before you make any Draw calls.

See Also

IDirect3DDevice9::DrawIndexedPrimitive, IDirect3DDevice9::SetStreamSource, Rendering Primitives

© 2002 Microsoft Corporation. All rights reserved.