?/TD>
Microsoft DirectX 9.0

ID3DXPMesh Interface


Applications use the methods of the ID3DXPMesh interface to manipulate progressive mesh objects. A progressive mesh enables progressive refinement of the mesh object.

ID3DXPMesh Members

CloneMesh Clones a mesh using a declarator.
CloneMeshFVF Clones a mesh using a flexible vertex format (FVF) code.
ClonePMesh Clones a progressive mesh using a declarator.
ClonePMeshFVF Clones a progressive mesh using a FVF code.
ConvertAdjacencyToPointReps Converts mesh adjacency information to an array of point representatives.
ConvertPointRepsToAdjacency Converts point representative data to mesh adjacency information.
DrawSubset

Draws a subset of a mesh.

GenerateAdjacency Generates adjacency information based on mesh indices.
GenerateVertexHistory Generate an immediate ancestor for each vertex when it is removed by a vertex split. Allows generation of a geomorph.
GetAdjacency Returns the face adjacency array of the mesh.
GetAttributeTable Retrieves either an attribute table for a mesh, or the number of entries stored in an attribute table for a mesh.
GetDeclaration

Retrieves a declaration describing the vertices in the mesh.

GetDevice Retrieves the device associated with the mesh.
GetFVF

Get the fixed function vertex value.

GetIndexBuffer

Retrieves the data in an index buffer.

GetMaxFaces

Retrieves the maximum number of faces that the progressive mesh supports.

GetMaxVertices

Retrieves the maximum number of vertices that the progressive mesh supports.

GetMinFaces

Retrieves the minimum number of faces that the progressive mesh supports.

GetMinVertices

Retrieves the minimum number of vertices that the progressive mesh supports.

GetNumBytesPerVertex Gets the number of bytes per vertex.
GetNumFaces

Retrieves the number of faces in the mesh.

GetNumVertices

Retrieves the number of vertices in the mesh.

GetOptions Retrieves the mesh options enabled for this mesh at creation time.
GetVertexBuffer

Retrieves the data in a vertex buffer.

LockIndexBuffer

Locks an index buffer and obtains a pointer to the index buffer memory.

LockVertexBuffer

Locks a vertex buffer and obtains a pointer to the vertex buffer memory.

Optimize Generates an output mesh with reordered faces and vertices to optimize performance.
OptimizeBaseLOD Optimizes the base level of detail (LOD) part of an ID3DXPMesh object.
Save Saves the progressive mesh to the specified stream object.
SetNumFaces Sets the current level of detail to as close to the specified number of faces as possible.
SetNumVertices Sets the current level of detail to as close to the specified number of vertices as possible.
TrimByFaces Modifies the minimum and maximum level of detail (LOD) of an ID3DXPMesh object.
TrimByVertices Modifies the minimum and maximum level of detail (LOD) of an ID3DXPMesh object.
UnlockIndexBuffer

Unlocks an index buffer.

UnlockVertexBuffer

Unlocks a vertex buffer.

UpdateSemantics

This method allows the user to change the mesh declaration without changing the data layout of the vertex buffer. The call is valid only if the old and new declaration formats have the same vertex size.

Remarks

To obtain the ID3DXPMesh interface, call the D3DXGeneratePMesh function.

This interface inherits additional functionality from the ID3DXBaseMesh interface.

This interface, like all Component Object Model (COM) interfaces, inherits additional functionality from the IUnknown interface.

The LPD3DXPMESH type is defined as a pointer to the ID3DXPMesh interface, as shown below.

typedef struct ID3DXPMesh *LPD3DXPMESH;

Interface Information

Inherits fromID3DXBaseMesh
Headerd3dx9mesh.h
Import libraryd3dx9.lib
Minimum operating systems Windows 98

See Also

Mesh Functions


© 2002 Microsoft Corporation. All rights reserved.