이 인터페이스는 애니메이션 기능을 제어하는 데 사용되며 애니메이션 집합과 애니메이션 효과를 주는 변환 프레임을 연결합니다. 인터페이스에는 여러 애니메이션을 혼합하고 시간이 지남에 따라 혼합 매개 변수를 수정하여 부드러운 전환 및 기타 효과를 가능하게 하는 메서드가 있습니다.
멤버
ID3DXAnimationController 인터페이스는 IUnknown 인터페이스에서 상속됩니다. ID3DXAnimationController 에는 다음과 같은 유형의 멤버도 있습니다.
메서드
ID3DXAnimationController 인터페이스에는 이러한 메서드가 있습니다.
| 메서드 | 설명 |
|---|---|
| AdvanceTime | 메시에 애니메이션 효과를 주면 전역 애니메이션 시간이 지정된 양만큼 진행됩니다. |
| CloneAnimationController | 애니메이션 컨트롤러를 복제하거나 복사합니다. |
| GetAnimationSet | 애니메이션 집합을 가져옵니다. |
| GetAnimationSetByName | 이름이 지정된 애니메이션 집합을 가져옵니다. |
| GetCurrentPriorityBlend | 현재 실행 중인 우선 순위 혼합 이벤트에 대한 이벤트 핸들을 반환합니다. |
| GetCurrentTrackEvent | 지정된 애니메이션 트랙에서 현재 실행 중인 이벤트에 대한 이벤트 핸들을 반환합니다. |
| GetEventDesc | 지정된 애니메이션 이벤트에 대한 설명을 가져옵니다. |
| GetMaxNumAnimationOutputs | 애니메이션 컨트롤러에서 지원할 수 있는 애니메이션 출력의 최대 수를 가져옵니다. |
| GetMaxNumAnimationSets | 애니메이션 컨트롤러에서 지원할 수 있는 애니메이션 집합의 최대 수를 가져옵니다. |
| GetMaxNumEvents | 애니메이션 컨트롤러에서 지원할 수 있는 최대 이벤트 수를 가져옵니다. |
| GetMaxNumTracks | 애니메이션 컨트롤러의 최대 트랙 수를 가져옵니다. |
| GetNumAnimationSets | 애니메이션 컨트롤러에 현재 등록된 애니메이션 집합 수를 반환합니다. |
| GetPriorityBlend | 애니메이션 컨트롤러에서 사용하는 현재 우선 순위 혼합 가중치를 가져옵니다. |
| GetTime | 전역 애니메이션 시간을 가져옵니다. |
| GetTrackAnimationSet | 지정된 트랙에 대한 애니메이션 집합을 가져옵니다. |
| GetTrackDesc | 트랙 설명을 가져옵니다. |
| GetUpcomingPriorityBlend | 지정된 이벤트 후에 발생하도록 예약된 다음 우선 순위 혼합 이벤트에 대한 이벤트 핸들을 반환합니다. |
| GetUpcomingTrackEvent | 애니메이션 트랙에서 지정된 이벤트 이후에 발생하도록 예약된 다음 이벤트에 대한 이벤트 핸들을 반환합니다. |
| KeyPriorityBlend | 지정된 애니메이션 트랙에 대한 혼합 이벤트 키를 설정합니다. |
| KeyTrackEnable | 애니메이션 트랙을 사용하거나 사용하지 않도록 설정하는 이벤트 키를 설정합니다. |
| KeyTrackPosition | 애니메이션 트랙의 현지 시간을 변경하는 이벤트 키를 설정합니다. |
| KeyTrackSpeed | 애니메이션 트랙의 재생 속도를 변경하는 이벤트 키를 설정합니다. |
| KeyTrackWeight | 애니메이션 트랙의 가중치를 변경하는 이벤트 키를 설정합니다. 가중치는 여러 트랙을 함께 결합할 때 승수로 사용됩니다. |
| RegisterAnimationOutput | 애니메이션 컨트롤러에 애니메이션 출력을 추가하고 크기 조정, 회전 및 변환(SRT) 변환에 대한 포인터를 등록합니다. |
| RegisterAnimationSet | 애니메이션 컨트롤러에 애니메이션 집합을 추가합니다. |
| ResetTime | 전역 애니메이션 시간을 0으로 다시 설정합니다. 보류 중인 모든 이벤트는 원래 일정을 유지하지만 새 기간에는 유지됩니다. |
| SetPriorityBlend | 애니메이션 컨트롤러에서 사용하는 우선 순위 혼합 가중치를 설정합니다. |
| SetTrackAnimationSet | 지정된 트랙에 애니메이션 집합을 적용합니다. |
| SetTrackDesc | 트랙 설명을 설정합니다. |
| SetTrackEnable | 애니메이션 컨트롤러에서 트랙을 사용하거나 사용하지 않도록 설정합니다. |
| SetTrackPosition | 트랙을 지정된 로컬 애니메이션 시간으로 설정합니다. |
| SetTrackPriority | 지정된 애니메이션 트랙의 우선 순위 혼합 가중치를 설정합니다. |
| SetTrackSpeed | 트랙 속도를 설정합니다. 트랙 속도는 트랙 재생 속도를 향상하거나 느리게 하는 데 사용되는 승수와 유사합니다. |
| SetTrackWeight | 트랙 가중치를 설정합니다. 가중치는 여러 트랙을 함께 혼합하는 방법을 결정하는 데 사용됩니다. |
| UnkeyAllPriorityBlends | 애니메이션 컨트롤러에서 예약된 모든 우선 순위 혼합 이벤트를 제거합니다. |
| UnkeyAllTrackEvents | 지정된 애니메이션 트랙에서 모든 이벤트를 제거합니다. |
| UnkeyEvent | 애니메이션 트랙에서 지정된 이벤트를 제거하여 이벤트 실행을 방지합니다. |
| UnregisterAnimationSet | 애니메이션 컨트롤러에서 애니메이션 집합을 제거합니다. |
| ValidateEvent | 지정된 이벤트 핸들이 유효한지 여부와 애니메이션 이벤트가 아직 완료되지 않은지 확인합니다. |
설명
D3DXCreateAnimationController를 사용하여 애니메이션 컨트롤러 개체를 만듭니다.
LPD3DXANIMATIONCONTROLLER 형식은 ID3DXAnimationController 인터페이스에 대한 포인터로 정의됩니다.
typedef interface ID3DXAnimationController ID3DXAnimationController;
typedef interface ID3DXAnimationController *LPD3DXANIMATIONCONTROLLER;
D3DXEVENTHANDLE 형식은 애니메이션 컨트롤러 이벤트에 대한 이벤트 핸들로 정의됩니다.
typedef DWORD D3DXEVENTHANDLE;
LPD3DXEVENTHANDLE 형식은 애니메이션 컨트롤러 이벤트에 대한 이벤트 핸들에 대한 포인터로 정의됩니다.
typedef D3DXEVENTHANDLE *LPD3DXEVENTHANDLE;
요구 사항
| 요구 사항 | 값 |
|---|---|
| 헤더 |
|
| 라이브러리 |
|
추가 정보