Share via


D3DXUVAtlasPack 함수

메시 분할 데이터를 아틀라스로 압축합니다.

구문

HRESULT D3DXUVAtlasPack(
  _In_       LPD3DXMESH      pMesh,
  _In_       UINT            dwWidth,
  _In_       UINT            dwHeight,
  _In_       FLOAT           fGutter,
  _In_       DWORD           dwTextureIndex,
       const DWORD           *pdwPartitionResultAdjacency,
  _In_       LPD3DXUVATLASCB pCallback,
  _In_       FLOAT           fCallbackFrequency,
  _In_       LPVOID          pUserContent,
  _In_       DWORD           dwOptions,
  _In_       LPD3DXBUFFER    pFacePartitioning
);

매개 변수

pMesh [in]

형식: LPD3DXMESH

아틀라스를 계산하기 위한 개체 기하 도형을 포함하는 입력 메시( ID3DXMesh 참조)에 대한 포인터입니다. 최소한 메시에는 위치 데이터와 2D 텍스처 좌표가 포함되어야 합니다.

dwWidth [in]

형식: UINT

텍스처 너비입니다.

dwHeight [in]

형식: UINT

텍스처 높이입니다.

fGutter [in]

형식: FLOAT

아틀라스의 두 차트 사이의 최소 거리(텍셀)입니다. 여백은 항상 너비로 조정됩니다. 따라서 512x512 텍스처에서 2.5의 여백을 사용하는 경우 두 차트 사이의 최소 거리는 2.5/512.0 텍셀입니다.

dwTextureIndex [in]

형식: DWORD

사용할 텍스처 좌표 집합을 식별하는 0부터 시작하는 텍스처 좌표 인덱스입니다.

pdwPartitionResultAdjacency

형식: const DWORD*

메시의 각 면에 대해 세 개의 인접 항목을 지정하는 얼굴당 3개의 DWORD 배열에 대한 포인터입니다. D3DXUVAtlasPartition에서 반환된 ppPartitionResultAdjacency에서 파생되어야 합니다. 팩은 각 차트의 가장자리를 찾기 위해 파티션 단계에서 차트가 잘린 위치를 알고 있어야 하므로 이 값은 NULL일 수 없습니다.

pCallback [in]

형식: LPD3DXUVATLASCB

진행률을 모니터링하는 데 유용한 콜백 함수( LPD3DXUVATLASCB 참조)에 대한 포인터입니다.

fCallbackFrequency [in]

형식: FLOAT

D3DX가 콜백을 호출하는 빈도를 지정합니다. 적절한 기본값은 0.0001f입니다.

pUserContent [in]

형식: LPVOID

콜백 함수에 다시 전달할 void 포인터입니다.

dwOptions [in]

형식: DWORD

이 옵션 매개 변수는 현재 예약되어 있습니다.

pFacePartitioning [in]

형식: LPD3DXBUFFER

최종 얼굴 분할의 배열을 포함하는 ID3DXBuffer 에 대한 포인터입니다. 각 요소에는 얼굴당 하나의 DWORD가 포함됩니다.

반환 값

형식: HRESULT

함수가 성공하면 반환 값은 D3D_OK. 그렇지 않으면 값이 D3DERR_INVALIDCALL.

요구 사항

요구 사항
헤더
D3DX9Mesh.h
라이브러리
D3dx9.lib

추가 정보

UVAtlas 함수