Animator 컴포넌트를 사용하여 씬의 게임 오브젝트에 애니메이션을 할당할 수 있습니다. Animator 컴포넌트는 어떤 애니메이션 클립을 사용할 것인지, 언제 어떻게 블렌딩 및 전환할 것인지를 정의하는 Animator 컨트롤러에 대한 레퍼런스를 필요로 합니다.
게임 오브젝트가 아바타에서 정의된 휴머노이드 캐릭터인 경우, 아바타는 다음과 같이 이 컴포넌트 내에 할당되어야 합니다.
| 프로퍼티: | 기능: | |
|---|---|---|
| Controller | 캐릭터에 부여된 Animator 컨트롤러. | |
| Avatar | 이 캐릭터의 아바타입니다. (애니메이터가 휴머노이드 캐릭터를 애니메이션화하는 데 사용되는 경우) | |
| Apply Root Motion | 캐릭터의 포지션과 회전을 애니메이션 자체에서 제어할지 또는 스크립트에서 제어할지 선택합니다. | |
| Update Mode | 애니메이터 업데이트를 언제 할지, 어떤 타임스케일을 사용할지 선택할 수 있게 해줍니다. | |
| Normal | 애니메이터는 Update 호출에 따라 업데이트되며, 애니메이터의 속도는 현재의 타임스케일과 일치합니다. 타임스케일이 느려지면 애니메이션도 따라서 느려집니다. | |
| Animate Physics | 애니메이터는 FixedUpdate 호출에 따라(즉, 물리 시스템과 동시에) 업데이트됩니다. 리지드바디 오브젝트를 밀어 움직일 수 있는 캐릭터와 같이 물리 상호 작용을 하는 오브젝트의 모션을 애니메이션화하는 경우에 이 모드를 사용해야 합니다. | |
| 스케일되지 않은 시간(Unscaled Time) | 애니메이터가 Update 호출에 따라 업데이트되지만, 애니메이터의 속도는 현재 타임스케일을 무시하고 100% 속도로 애니메이션화됩니다. 특수 효과를 위해 수정된 타임스케일을 사용하거나 게임플레이를 일시 정지하는 동안 일반 속도로 GUI 시스템을 애니메이션화하는 데 유용합니다. | |
| Culling Mode | 애니메이션에 사용할 수 있는 컬링 모드. | |
| 항상 애니메이션화(Always Animate) | 항상 애니메이션화하고 오프스크린일 경우에도 컬링을 하지 않습니다. | |
| 업데이트 트랜스폼 컬링(Cull Update Transforms) | 렌더러가 보이지 않을 때 리타겟, IK 및 트랜스폼의 쓰기를 비활성화합니다. | |
| 완전히 컬링(Cull Completely) | 렌더러가 보이지 않을 때 애니메이션을 완전히 비활성화합니다. | |
Animator 컴포넌트의 하단에 있는 인포메이션 박스에는 Animator 컨트롤러가 사용하는 모든 클립의 상세한 데이터가 표시됩니다.
애니메이션 클립은 시간 흐름에 따라 값이 어떻게 변하는지 나타내는 ‘커브’ 형식의 데이터를 포함합니다. 이와 같은 커브는 오브젝트의 위치나 회전, 휴머노이드 애니메이션 시스템에서 근육의 움직임 또는 머티리얼 컬러 변화 등의 클립 내 애니메이션 값을 나타냅니다.
다음 표는 각 데이터 항목이 무엇을 의미하는지 설명합니다:
| 레이블 | 설명 |
|---|---|
| Clip Count | 해당 애니메이터에 할당된 Animator 컨트롤러가 사용하는 애니메이션 클립의 총 개수. |
| Curves (Pos, Rot & Scale) | Unity가 게임 오브젝트의 위치, 회전 또는 스케일을 애니메이션화하는 데 사용하는 총 커브 수입니다. 이는 표준 휴머노이드 릭의 일부가 아닌 애니메이션화된 게임 오브젝트를 위한 것입니다. 휴머노이드 아바타를 애니메이션화할 때 이 커브는 꼬리, 흐르는 천 또는 매달린 펜던트 등 근육이 아닌 추가 뼈대의 수를 나타냅니다. 휴머노이드 애니메이션이 있고 근육이 아닌 예기치 않은 애니메이션 커브를 발견하면 애니메이션 파일에 불필요한 애니메이션 커브가 있을 수 있습니다. |
| Muscles | 이 애니메이터가 휴머노이드 애니메이션에 사용하는 근육 애니메이션 커브 수입니다. 이는 표준 휴머노이드 아바타 근육을 애니메이션화하는 데 사용되는 커브입니다. Unity 표준 아바타의 모든 휴머노이드 뼈대에 대한 표준 근육 움직임 외에도 루트 모션 포지션과 회전 애니메이션을 저장하는 두 개의 ’근육 커브’가 포함됩니다. |
| Generic | 머티리얼 컬러와 같은 다른 프로퍼티를 애니메이션화할 때 사용되는 숫자(플로트) 커브의 개수 |
| PPtr | 스프라이트 애니메이션 커브의(Unity 2D 시스템에서 사용됨) 총 개수 |
| Curves Count | 애니메이션 커브의 전체 개수 합계 |
| 상수 | 상수(변경되지 않음) 값으로 최적화된 애니메이션 커브의 수입니다. 애니메이션 파일에 변하지 않는 값의 커브가 포함된 경우 Unity는 이 옵션을 자동으로 선택합니다. |
| Dense | 데이터 저장 시 ‘밀도’ 메서드를 사용하여 최적화된 애니메이션 커브의 개수(선형적으로 보간된 이산값). 이 메서드는 ‘스트림’ 메서드보다 훨씬 더 적은 메모리를 사용합니다. |
| Stream | 데이터를(커브된 보간의 탄젠트 데이터와 시간이 포함된 값) 저장할 때 ‘스트림’ 메서드를 사용하는 애니메이션 커브의 개수. 이 데이터는 ‘밀도’ 메서드에 비해 메모리를 훨씬 더 많이 차지합니다. |
애니메이션 임포트 레퍼런스에서 ’Anim Compression’을 ’Optimal’로 설정하여 애니메이션 클립을 임포트한 경우, Unity는 각 커브 데이터를 저장할 때 밀도와 스트림 중에서 어떤 메서드를 사용하는 것이 가장 좋을지 휴리스틱(heuristic) 알고리즘을 사용하여 결정합니다.