Funzione D3DXOptimizeVertices
Genera un mapping dei vertici ottimizzato per un elenco di triangoli. Questa funzione viene comunemente usata dopo aver applicato il mapping del viso generato da D3DXOptimizeFaces.
Sintassi
HRESULT D3DXOptimizeVertices(
_In_ LPCVOID pIndices,
_In_ UINT NumFaces,
_In_ UINT NumVertices,
_In_ BOOL Indices32Bit,
_Inout_ DWORD *pVertexRemap
);
Parametri
-
pIndices [in]
-
Tipo: LPCVOID
Puntatore a indici dell'elenco di triangoli da usare per ordinare vertici.
-
NumFaces [in]
-
Tipo: UINT
Numero di visi nell'elenco triangolo.
-
NumVertices [in]
-
Tipo: UINT
Numero di vertici a cui fa riferimento l'elenco triangolo.
-
Indices32Bit [in]
-
Tipo: BOOL
Flag che indica il tipo di indice: TRUE se gli indici sono a 32 bit (più di 65535 vertici), FALSE se gli indici sono a 16 bit (65535 o meno vertici).
-
pVertexRemap [in, out]
-
Tipo: DWORD*
Puntatore a un buffer di destinazione che conterrà il nuovo indice per ogni vertice. Il valore archiviato in pVertexRemap per un determinato elemento è la posizione del vertice di origine nel nuovo ordinamento dei vertici.
Valore restituito
Tipo: HRESULT
Se la funzione ha esito positivo, il valore restituito è D3D_OK. Se la funzione ha esito negativo, il valore restituito può essere uno dei seguenti: D3DERR_INVALIDCALL, E_OUTOFMEMORY.
Commenti
Per impostazione predefinita, una mesh usa indici a 16 bit quando viene creata, a meno che l'applicazione non specifichi altrimenti. Per verificare se una mesh esistente usa indici a 16 bit o a 32 bit, chiamare ID3DXBaseMesh::GetOptions e verificare la presenza del flag di D3DXMESH_32BIT.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche