SimplificationMesh.ReduceFaces(Int32) Method (Microsoft.DirectX.Direct3D)

How Do I...?

  • Simplify a Mesh

Reduces the number of faces in a simplification mesh.

Definition

Visual Basic Public Sub ReduceFaces( _
    ByVal faces As Integer _
)
C# public void ReduceFaces(
    int faces
);
C++ public:
void ReduceFaces(
    int faces
);
JScript public function ReduceFaces(
    faces : int
);

Parameters

faces System.Int32
Target number of faces by which to reduce the primitive count.

Remarks

This method performs edge collapses to reduce the number of primitives to the value specified in param_Int32_faces. Note that, due to certain restrictions, it is not always possible to reduce a mesh to the requested value.

Exceptions

InvalidCallException

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

How Do I...?

Simplify a Mesh

This example demonstrates how to simplify a mesh.

The mesh is simplified by 25 vertices.

In the following C# code example, mesh is assumed to be a Mesh instance that has been properly loaded and cleaned, adjacency is a GraphicsStream instance that contains the mesh adjacency data, and device is the rendering Device.

              [C#]
              

SimplificationMesh simplifiedMesh = new SimplificationMesh(mesh, adjacency);

simplifiedMesh.ReduceVertices(mesh.NumberVertices - 25);

mesh.Dispose();
mesh = simplifiedMesh.Clone(simplifiedMesh.Options.Value, 
                            simplifiedMesh.VertexFormat, device);
simplifiedMesh.Dispose();