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 |
|
Biblioteca |
|
Consulte también