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