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
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Confira também

ID3DXSkinInfo