Compartir a través de


Método ID3DX10Mesh::Optimize

Genera una nueva malla con caras y vértices reordenados para optimizar el rendimiento del dibujo.

Sintaxis

HRESULT Optimize(
  [in]  UINT        Flags,
  [in]  UINT        *pFaceRemap,
  [out] LPD3D10BLOB *ppVertexRemap
);

Parámetros

Marcas [in]

Tipo: UINT

Especifica el tipo de optimización que se va a realizar. Este parámetro se puede establecer en una combinación de una o varias marcas de D3DXMESHOPT y D3DXMESH (excepto D3DXMESH_32BIT, D3DXMESH_IB_WRITEONLY y D3DXMESH_WRITEONLY).

pFaceRemap [in]

Tipo: UINT*

Matriz de UINT, una por cara, que identifica la cara de malla original que corresponde a cada cara de la malla optimizada. Si el valor proporcionado para este argumento es NULL, no se devuelven los datos de reasignación de caras.

ppVertexRemap [out]

Tipo: LPD3D10BLOB*

Dirección de un puntero a una interfaz ID3D10Blob, que contiene un DWORD para cada vértice que especifica cómo se asignan los nuevos vértices a los vértices antiguos. Este mapa es útil si necesita modificar los datos externos en función de la nueva asignación de vértices.

Valor devuelto

Tipo: HRESULT

El valor devuelto es uno de los valores enumerados en Códigos de retorno de Direct3D 10.

Comentarios

Este método genera una nueva malla. Antes de ejecutar Optimize, una aplicación debe generar un búfer de adyacencia llamando a ID3DX10Mesh::GenerateAdjacencyAndPointReps. El búfer de adyacencia contiene datos de adyacencia, como una lista de bordes y las caras adyacentes entre sí.

Este método es muy similar al método ID3DX10Mesh::CloneMesh , salvo que puede realizar la optimización al generar el nuevo clon de la malla. La malla de salida hereda todos los parámetros de creación de la malla de entrada.

Requisitos

Requisito Value
Encabezado
D3DX10.h
Biblioteca
D3DX10.lib

Consulte también

ID3DX10Mesh

D3DX Interfaces