Condividi tramite


Metodo ID3DX10Mesh::Optimize

Genera una nuova mesh con visi e vertici riordinati per ottimizzare le prestazioni di disegno.

Sintassi

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

Parametri

Flag [in]

Tipo: UINT

Specifica il tipo di ottimizzazione da eseguire. Questo parametro può essere impostato su una combinazione di uno o più flag da D3DXMESHOPT e D3DXMESH (ad eccezione di D3DXMESH_32BIT, D3DXMESH_IB_WRITEONLY e D3DXMESH_WRITEONLY).

pFaceRemap [in]

Tipo: UINT*

Matrice di UINT, una per viso, che identifica il viso mesh originale che corrisponde a ogni viso nella mesh ottimizzata. Se il valore fornito per questo argomento è NULL, i dati del mapping dei visi non vengono restituiti.

ppVertexRemap [out]

Tipo: LPD3D10BLOB*

Indirizzo di un puntatore a un'interfaccia ID3D10Blob, che contiene un DWORD per ogni vertice che specifica la modalità di mapping dei nuovi vertici ai vertici precedenti. Questa nuova mappa è utile se è necessario modificare i dati esterni in base al nuovo mapping dei vertici.

Valore restituito

Tipo: HRESULT

Il valore restituito è uno dei valori elencati in Codici restituiti Direct3D 10.

Commenti

Questo metodo genera una nuova mesh. Prima di eseguire Optimize, un'applicazione deve generare un buffer di adiacenza chiamando ID3DX10Mesh::GenerateAdjacencyAndPointReps. Il buffer di adiacenza contiene dati di adiacenza, ad esempio un elenco di bordi e i visi adiacenti l'uno all'altro.

Questo metodo è molto simile al metodo ID3DX10Mesh::CloneMesh , ad eccezione del fatto che può eseguire l'ottimizzazione durante la generazione del nuovo clone della mesh. La mesh di output eredita tutti i parametri di creazione della mesh di input.

Requisiti

Requisito Valore
Intestazione
D3DX10.h
Libreria
D3DX10.lib

Vedi anche

ID3DX10Mesh

Interfacce D3DX