메카님 애니메이션 시스템은 애니메이션 클립을 기반으로 합니다. 애니메이션 클립은 캐릭터 또는 게임 오브젝트가 시간의 흐름에 따라 위치, 회전 또는 기타 프로퍼티를 변경하는 방식에 대한 정보를 포함합니다. 각 애니메이션 클립을 녹화본으로 생각해 보십시오. 외부 소스의 애니메이션 클립은 Autodesk® 3ds Max® 또는 Autodesk® Maya®와 같은 타사 소프트웨어를 사용하여 아티스트 또는 애니메이터가 만듭니다.
많은 애니메이션 클립을 애니메이터 컨트롤러라는 구조화된 플로차트와 유사한 시스템으로 구성할 수 있습니다. 애니메이터 컨트롤러는 재생 중인 애니메이션 클립과 다음 애니메이션 클립 재생 시점의 기준을 추적하는 상태 머신 역할을 합니다.
예를 들어 간단한 애니메이터 컨트롤러에는 회전하고 반사되는 수집 가능한 아이템에 대한 단일 애니메이션 클립이 포함될 수 있습니다. 문에 대한 애니메이터 컨트롤러에는 두 개의 애니메이션 클립이 포함될 수 있습니다. 하나는 문 열기, 다른 하나는 문 닫기입니다.
더 고급인 애니메이터 컨트롤러에는 대기, 회전, 걷기, 가볍게 뛰기와 같은 캐릭터의 각 행동에 대해 수십 개의 휴머노이드 애니메이션이 포함될 수 있습니다. 이 애니메이터 컨트롤러는 여러 애니메이션 클립을 블렌딩하고 플레이어가 씬에서 움직일 때 유동적인 모션을 제공하기 위해 블렌드 트리를 사용할 수 있습니다.
메카님 애니메이션 시스템은 휴머노이드 캐릭터를 처리하기 위한 특수한 기능을 제공합니다. 여기에는 한 소스에서 다른 소스로 애니메이션을 다시 타게팅하고 캐릭터가 올바르게 변형되도록 근육 정의를 조정하는 기능이 포함됩니다. 예를 들어 타사 애니메이션 라이브러리에서 애니메이션을 자체 캐릭터로 다시 타게팅한 후 해당 캐릭터의 모션 범위를 조정할 수 있습니다. 이러한 특수 기능은 휴머노이드 캐릭터를 일반적인 내부 형식으로 매핑하는 Unity의 아바타 시스템을 통해 사용할 수 있습니다.
애니메이션 클립, 애니메이터 컨트롤러, 아바타는 Animator 컴포넌트가 있는 게임 오브젝트를 통해 서로 연결됩니다. 이 컴포넌트는 애니메이터 컨트롤러와 필요한 경우 모델의 아바타를 참조합니다. 애니메이터 컨트롤러는 애니메이션 클립도 참조합니다.
이전 다이어그램은 다음의 워크플로를 보여 줍니다.
Astrella라는 우주 비행사는 Unity의 아바타 포맷에 매핑된 뼈대의 특정 구성을 가지고 있습니다. 매핑은 프로젝트 창의 임포트된 캐릭터 모델 아래 아바타 에셋으로 저장됩니다.다음 주제에서는 메카님 애니메이션 시스템에 대한 자세한 내용을 설명합니다.