Metodo ID3DXSkinInfo::ConvertToBlendedMesh
Accetta una mesh e restituisce una nuova mesh con pesi di fusione per vertice e una tabella di combinazione di ossa. La tabella descrive quali ossa influiscono sui subset della mesh.
Sintassi
HRESULT ConvertToBlendedMesh(
[in] LPD3DXMESH pMesh,
[in] DWORD Options,
[in] const DWORD *pAdjacencyIn,
[in] LPDWORD pAdjacencyOut,
[out] DWORD *pFaceRemap,
[out] LPD3DXBUFFER *ppVertexRemap,
[out] DWORD *pMaxVertexInfl,
[out] DWORD *pNumBoneCombinations,
[out] LPD3DXBUFFER *ppBoneCombinationTable,
[out] LPD3DXMESH *ppMesh
);
Parametri
-
pMesh [in]
-
Tipo: LPD3DXMESH
Mesh di input. Vedere ID3DXMesh.
-
Opzioni [in]
-
Tipo: DWORD
Attualmente inutilizzato.
-
pAdjacencyIn [in]
-
Tipo: const DWORD*
Informazioni sull'adjacency mesh di input.
-
pAdjacencyOut [in]
-
Tipo: LPDWORD
Informazioni sull'adjacency mesh di output.
-
pFaceRemap [out]
-
Tipo: DWORD*
Matrice di DWORD, una per viso, che identifica il viso della mesh originale che corrisponde a ogni viso nella mesh miscelata. Se il valore specificato per questo argomento è NULL, i dati di remap del viso non vengono restituiti.
-
ppVertexRemap [out]
-
Tipo: LPD3DXBUFFER*
Indirizzo di un puntatore a un'interfaccia ID3DXBuffer , che contiene un DWORD per ogni vertice che specifica il modo in cui i nuovi vertici vengono mappati ai vertici precedenti. Questa mappa è utile se è necessario modificare i dati esterni in base al nuovo mapping dei vertici. Questo parametro è facoltativo; È possibile usare NULL.
-
pMaxVertexInfl [out]
-
Tipo: DWORD*
Puntatore a un DWORD che conterrà il numero massimo di influenze dell'osso necessarie per vertice per questo metodo di pelle.
-
pNumBoneCombinations [out]
-
Tipo: DWORD*
Puntatore al numero di ossa nella tabella di combinazione di ossa.
-
ppBoneCombinationTable [out]
-
Tipo: LPD3DXBUFFER*
Puntatore alla tabella di combinazione dell'osso. I dati sono organizzati in una struttura D3DXBONECOMBINATION .
-
ppMesh [out]
-
Tipo: LPD3DXMESH*
Puntatore alla nuova mesh.
Valore restituito
Tipo: HRESULT
Se il metodo ha esito positivo, il valore restituito è D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere D3DERR_INVALIDCALL.
Commenti
Ogni elemento della matrice di mapping specifica l'indice precedente per tale posizione. Ad esempio, se un vertice era nella posizione 3, ma è stato ricompresso in posizione 5, il quinto elemento di pVertexRemap conterrà 3.
Questo metodo non viene eseguito sull'hardware che non supporta la fusione dei vertici a funzione fissa.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche