Condividi tramite


Device.ProcessVertices Method

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

Namespace: Microsoft.WindowsMobile.DirectX.Direct3D
Assembly: Microsoft.WindowsMobile.DirectX (in microsoft.windowsmobile.directx.dll)

Syntax

'Declaration
Public Sub ProcessVertices ( _
    srcStartIndex As Integer, _
    destIndex As Integer, _
    vertexCount As Integer, _
    destBuffer As VertexBuffer, _
    copyData As Boolean _
)
'Usage
Dim instance As Device
Dim srcStartIndex As Integer
Dim destIndex As Integer
Dim vertexCount As Integer
Dim destBuffer As VertexBuffer
Dim copyData As Boolean

instance.ProcessVertices(srcStartIndex, destIndex, vertexCount, destBuffer, copyData)
public void ProcessVertices (
    int srcStartIndex,
    int destIndex,
    int vertexCount,
    VertexBuffer destBuffer,
    bool copyData
)
public:
void ProcessVertices (
    int srcStartIndex, 
    int destIndex, 
    int vertexCount, 
    VertexBuffer^ destBuffer, 
    bool copyData
)
public void ProcessVertices (
    int srcStartIndex, 
    int destIndex, 
    int vertexCount, 
    VertexBuffer destBuffer, 
    boolean copyData
)
public function ProcessVertices (
    srcStartIndex : int, 
    destIndex : int, 
    vertexCount : int, 
    destBuffer : VertexBuffer, 
    copyData : boolean
)
Not applicable.

Parameters

  • srcStartIndex
    The index of the first vertex to load.
  • destIndex
    The index of the first vertex in the destination vertex buffer into which the results are placed.
  • vertexCount
    The number of vertices to process.
  • destBuffer
    A VertexBuffer class; the destination vertex buffer that represents the stream of interleaved vertex data.
  • copyData
    Set to true for default processing. Set to false to prevent the system from copying vertex data not affected by the vertex operation into the destination buffer.

Exceptions

Exception type Condition

InvalidCallException

The method call is invalid. For example, a method's parameter might contain an invalid value.

Remarks

The order of operations for this method is as follows.

  • Transform vertices to projection space using the world + view + projection matrix.

  • Compute screen coordinates using viewport settings.

  • If clipping is enabled, compute clipping codes and store them in an internal buffer that is associated with the destination vertex buffer. If a vertex is inside the viewing frustum, its screen coordinates are computed. If the vertex is outside the viewing frustum, it is stored in the destination vertex buffer in projection space coordinates.

Note that the user does not have access to the internal clip code buffer. No clipping is done on triangles or any other primitives.

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

When 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 the extra components.

Platforms

Windows CE, Windows Mobile for Pocket PC, Windows Mobile for Smartphone

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

Version Information

.NET Compact Framework

Supported in: 2.0

See Also

Reference

Device Class
Device Members
Microsoft.WindowsMobile.DirectX.Direct3D Namespace