Microsoft DirectX 9.0 SDK Update (October 2004)

Clone a Mesh

Language:

Note: This documentation is preliminary and is subject to change.

This example shows how to clone a mesh to add space for normals, texture coordinates, colors, weights, etc. that were not originally present.

In the following C# code example, after the mesh is loaded from a file, the Mesh.Clone method is called. The call to pMesh.Clone obtains mesh flags from pMesh, and adds flags for supported VertexFormats and vertex normals.

The original pMesh mesh object is overwritten to contain these additional values. Note that pMesh is disposed before setting to the updated temporary mesh object.

In this example, device is assumed to be the rendering Device.

          [C#]
          
using Microsoft.DirectX.Direct3D; pMesh = Mesh.FromFile("a_mesh_file.x", MeshFlags.Managed, device); if ((pMesh.VertexFormat & VertexFormats.Normal) == 0) { Mesh pTempMesh = pMesh.Clone(pMesh.Options.Value, pMesh.VertexFormat | VertexFormats.Normal, device); pTempMesh.ComputeNormals(); pMesh.Dispose(); pMesh = pTempMesh; }

© 2004 Microsoft Corporation. All rights reserved. Terms of use.

Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center