ID3DXSkinInfo::ConvertToIndexedBlendedMesh 方法

採用網格,並傳回具有每個頂點混合權數、索引和骨狀組合資料表的新網格。 下表描述哪些調色盤會影響網格的子集。

語法

HRESULT ConvertToIndexedBlendedMesh(
  [in]        LPD3DXMESH   pMesh,
  [in]        DWORD        Options,
  [in]        DWORD        paletteSize,
  [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
);

參數

pMesh [in]

類型: LPD3DXMESH

輸入網格。 請參閱 ID3DXMesh

選項 [in]

類型: DWORD

目前未使用。

paletteSize [in]

類型: DWORD

矩陣調色盤可用的骨矩陣數目。

pAdjacencyIn [in]

類型:const DWORD*

輸入網格相鄰資訊。

pAdjacencyOut [in]

類型: LPDWORD

輸出網格相鄰資訊。

pFaceRemap [out]

類型: DWORD*

DWORD 的陣列,每個臉部一個,可識別與混合網格中每個臉部相對應的原始網格面。 如果為這個引數提供的值是 Null,則不會傳回臉部重新對應資料。

ppVertexRemap [out]

類型: LPD3DXBUFFER*

ID3DXBuffer介面指標的位址,其中包含每個頂點的 DWORD,指定新頂點對應至舊頂點的方式。 如果您需要根據新的頂點對應來改變外部資料,此重新對應會很有用。 此參數是選擇性的;可以使用 Null

pMaxVertexInfl [out]

類型: DWORD*

DWORD 的指標,其中包含此外觀方法每個頂點所需的最大骨質影響數目。

pNumBoneCombinations [out]

類型: DWORD*

指向骨式組合資料表中骨頭數目的指標。

ppBoneCombinationTable [out]

類型: LPD3DXBUFFER*

指向骨式組合表的指標。 資料會組織在 D3DXBONECOMBINATION 結構中。

ppMesh [out]

類型: LPD3DXMESH*

新網格的指標。

傳回值

類型: HRESULT

如果方法成功,傳回值會D3D_OK。 如果方法失敗,則傳回值可以D3DERR_INVALIDCALL。

備註

重新對應陣列中的每個元素都會指定該位置的上一個索引。 例如,如果頂點位於位置 3,但已重新對應至位置 5,則 pVertexRemap 的第五個元素將包含 3。

此方法不會在不支援固定函式頂點混合的硬體上執行。

規格需求

需求
標頭
D3DX9Mesh.h
程式庫
D3dx9.lib

另請參閱

ID3DXSkinInfo