d3d9.dllProcessVertices
Microsoft DirectX 9.0 SDK Update (October 2004)

IDirect3DDevice9::ProcessVertices Method


Applies the vertex processing defined by the vertex shader to the set of input data streams, generating a single stream of interleaved vertex data to the destination vertex buffer.

Syntax

HRESULT ProcessVertices(      

    UINT SrcStartIndex,     UINT DestIndex,     UINT VertexCount,     IDirect3DVertexBuffer9 *pDestBuffer,     IDirect3DVertexDeclaration9* pVertexDecl,     DWORD Flags );

Parameters

SrcStartIndex
[in] Index of first vertex to load.
DestIndex
[in] Index of first vertex in the destination vertex buffer into which the results are placed.
VertexCount
[in] Number of vertices to process.
pDestBuffer
[in] Pointer to an IDirect3DVertexBuffer9 interface, the destination vertex buffer representing the stream of interleaved vertex data.
pVertexDecl
[in] Pointer to an IDirect3DVertexDeclaration9 interface that represents the output vertex data declaration. When vertex shader 3.0 or above is set as the current vertex shader, the output vertex declaration must be present.
Flags
[in] Processing options. Set this parameter to 0 for default processing. Set to D3DPV_DONOTCOPYDATA to prevent the system from copying vertex data not affected by the vertex operation into the destination buffer. The D3DPV_DONOTCOPYDATA value may be combined with one or more D3DLOCK values appropriate for the destination buffer.

Return Value

If the method succeeds, the return value is D3D_OK.

If the method fails, the return value can be D3DERR_INVALIDCALL.

Remarks

The order of operations for this method is as follows:

The destination vertex buffer, pDestBuffer, must be created with a nonzero FVF parameter in IDirect3DDevice9::CreateVertexBuffer. The flexible vertex format (FVF) code specified during the call to the IDirect3DDevice9::CreateVertexBuffer method specifies the vertex elements present in the destination vertex buffer.

When Microsoft Direct3D generates texture coordinates, or copies or transforms input texture coordinates, and the output texture coordinate format defines more texture coordinate components than Direct3D generates, Direct3D does not change these extra components.

See Also

Device Types and Vertex Processing Requirements, Fixed Function Vertex Processing


© 2004 Microsoft Corporation. All rights reserved.
Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center.