Método ID3DXSkinInfo::ConvertToBlendedMesh
Usa uma malha e retorna uma nova malha com pesos de combinação por vértice e uma tabela de combinação óssea. A tabela descreve quais ossos afetam quais subconjuntos da malha.
Sintaxe
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
);
Parâmetros
-
pMesh [in]
-
Tipo: LPD3DXMESH
Malha de entrada. Consulte ID3DXMesh.
-
Opções [in]
-
Tipo: DWORD
Atualmente não utilizado.
-
pAdjacencyIn [in]
-
Tipo: const DWORD*
Informações de adjacência da malha de entrada.
-
pAdjacencyOut [in]
-
Tipo: LPDWORD
Informações de adjacência da malha de saída.
-
pFaceRemap [out]
-
Tipo: DWORD*
Uma matriz de DWORDs, uma por rosto, que identifica a face de malha original que corresponde a cada rosto na malha combinada. Se o valor fornecido para esse argumento for NULL, os dados de remapeamento facial não serão retornados.
-
ppVertexRemap [out]
-
Tipo: LPD3DXBUFFER*
Endereço de um ponteiro para uma interface ID3DXBuffer , que contém um DWORD para cada vértice que especifica como os novos vértices são mapeados para os vértices antigos. Esse remapeamento será útil se você precisar alterar dados externos com base no novo mapeamento de vértice. Esse parâmetro é opcional; NULL pode ser usado.
-
pMaxVertexInfl [out]
-
Tipo: DWORD*
Ponteiro para um DWORD que conterá o número máximo de influências ósseas necessárias por vértice para esse método de esfolação.
-
pNumBoneCombinations [out]
-
Tipo: DWORD*
Ponteiro para o número de ossos na tabela de combinação óssea.
-
ppBoneCombinationTable [out]
-
Tipo: LPD3DXBUFFER*
Ponteiro para a tabela de combinação de ossos. Os dados são organizados em uma estrutura D3DXBONECOMBINATION .
-
ppMesh [out]
-
Tipo: LPD3DXMESH*
Ponteiro para a nova malha.
Valor retornado
Tipo: HRESULT
Se o método for bem-sucedido, o valor retornado será D3D_OK. Se o método falhar, o valor retornado poderá ser D3DERR_INVALIDCALL.
Comentários
Cada elemento na matriz de remapeamento especifica o índice anterior para essa posição. Por exemplo, se um vértice estiver na posição 3, mas tiver sido remapeado para a posição 5, o quinto elemento de pVertexRemap conterá 3.
Esse método não é executado em hardware que não dá suporte à mesclagem de vértice de função fixa.
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|
Confira também