Mesh.Optimize Method (MeshFlags, GraphicsStream, array<Int32[]%, array<Int32[]%, GraphicsStream%)
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
Controls the reordering of mesh faces and vertices to optimize performance and generate an output mesh.
Namespace: Microsoft.WindowsMobile.DirectX.Direct3D
Assembly: Microsoft.WindowsMobile.DirectX (in Microsoft.WindowsMobile.DirectX.dll)
Syntax
'Declaration
Public Function Optimize ( _
flags As MeshFlags, _
adjacencyIn As GraphicsStream, _
<OutAttribute> ByRef adjacencyOut As Integer(), _
<OutAttribute> ByRef faceRemap As Integer(), _
<OutAttribute> ByRef vertexRemap As GraphicsStream _
) As Mesh
'Usage
Dim instance As Mesh
Dim flags As MeshFlags
Dim adjacencyIn As GraphicsStream
Dim adjacencyOut As Integer()
Dim faceRemap As Integer()
Dim vertexRemap As GraphicsStream
Dim returnValue As Mesh
returnValue = instance.Optimize(flags, _
adjacencyIn, adjacencyOut, faceRemap, _
vertexRemap)
public Mesh Optimize(
MeshFlags flags,
GraphicsStream adjacencyIn,
out int[] adjacencyOut,
out int[] faceRemap,
out GraphicsStream vertexRemap
)
public:
Mesh^ Optimize(
MeshFlags flags,
GraphicsStream^ adjacencyIn,
[OutAttribute] array<int>^% adjacencyOut,
[OutAttribute] array<int>^% faceRemap,
[OutAttribute] GraphicsStream^% vertexRemap
)
member Optimize :
flags:MeshFlags *
adjacencyIn:GraphicsStream *
adjacencyOut:int[] byref *
faceRemap:int[] byref *
vertexRemap:GraphicsStream byref -> Mesh
Parameters
- flags
Type: Microsoft.WindowsMobile.DirectX.Direct3D.MeshFlags
Specifies type of operation to conform to using one or more of the following MeshFlags enumerations:
IbWriteOnly
Use32Bit
- adjacencyIn
Type: Microsoft.WindowsMobile.DirectX.GraphicsStream
A GraphicsStream containing three values per face that specify the three neighbors for each face in the source mesh. If the edge has no adjacent faces, the value is 0.
- adjacencyOut
Type: array<System.Int32[]%
An array for the face adjacency array of the optimized mesh. The face adjacency is stored as an array of arrays. The innermost array is three indices of adjacent triangles, and the outermost array is one set of face adjacencies per triangle in the mesh.
- faceRemap
Type: array<System.Int32[]%
Destination buffer that contains the new index for each face.
- vertexRemap
Type: Microsoft.WindowsMobile.DirectX.GraphicsStream%
A GraphicsStream that contains the new index for each vertex.
Return Value
Type: Microsoft.WindowsMobile.DirectX.Direct3D.Mesh
A Mesh object that represents the optimized mesh.
Exceptions
Exception | Condition |
---|---|
InvalidCallException | The method call is invalid. For example, a method's parameter may contain an invalid value. |
OutOfMemoryException | Direct3D could not allocate sufficient memory to complete the call. |
Remarks
This method is similar to the Clone method for a BaseMesh, except that it can perform optimization while generating the new clone of the mesh.
The output mesh inherits all of the creation parameters of the input mesh.
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
Platforms
Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information
.NET Compact Framework
Supported in: 3.5, 2.0