지금까지 한 줄의 코드없이도 Unity의 애니메이션 시스템이 얼마나 강력하고 유연할 수 있는지 를 보았습니다. 하지만 물론 코드를 어지럽히는 것은 매우 재미 있기 때문에 스크립트에서 애니메이션을 트리거하는 것은 다음에 배울 수 있는 것입니다. Unity에서 이를 수행하려면 배율을 반대 값으로 설정합니다. 예를 들어, 여기서는 오른쪽 눈 눈 눈 조울수를 (-1, 1, 1)으로 설정합니다. 이 간단한 팁을 어디서나 y 속성(세로 미러)에서도 재사용할 수 있습니다. 이제 애니메이션 클립을 편집하는 다른 방법을 확인하려면 이번에는 광대를 오른쪽으로 이동시면 됩니다. 타임라인에서 0:45 정도의 시간을 선택합니다. 검사기로 이동하여 위치 x를 6으로 설정합니다. Unity가 타임라인에 또 다른 키프레임을 추가하는 것을 볼 수 있습니다. 이 운동 시스템은 작동하지만 모듈식이 아닙니다. 좌회전이나 우측을 아주 쉽게 추가할 수는 없습니다.

이 작업을 수행하는 더 나은 깨끗한 방법은 혼합 나무를 통해 것입니다. 블렌드 트리는 여러 애니메이션을 다양한 각도에서 원활하게 혼합하는 방법입니다. 블렌드 트리를 마우스 오른쪽 버튼으로 만들고 애니메이터를 클릭하고 새 블렌드 트리에서 상태 만들기를 선택합니다. « 로코모션 » 또는 « 온그라운드 »의 이름을 지정합니다. 모델에 영향을 주는 애니메이션을 추가하는 위치입니다. 애니메이터 탭의 재생 버튼을 눌러 애니메이션을 테스트할 수 있습니다(이 예제에서는 유휴 애니메이션이 하나의 스프라이트이기 때문에 정적으로 보입니다.) 그의 애니메이션을 추가할 시간입니다. > 애니메이터 컨트롤러 만들기로 이동하여 MyController의 이름을 지정합니다. 애니메이터 컨트롤러를 추가하면 새 탭이 표시됩니다. 캐릭터의 애니메이션을 추가하는 위치입니다.

여러 애니메이션이 있을 수 있지만 이 자습서에서는 애니메이션을 추가하는 것에 대해 이야기합니다. 각 상태(상자)는 애니메이션을 나타냅니다. 직접 애니메이션을 만들었다면 곧 Unity로 가져오는 것에 대해 논의할 것입니다. 캐릭터를 만들었거나 스톡 캐릭터를 구매하고 싶다면, 어디서 캐릭터를 찾을 수 있는지 알아보겠습니다. 지금까지 애니메이션 클립을 만들었습니다. 각 애니메이션을 실행할 수 있지만 게임 과정에서 재생되는 애니메이션은 변경할 수 없습니다. 상태 기계가 들어오는 곳입니다. 이러한 애니메이션의 경우, 달성할 수 있는 것을 예로 들수 있지만, 재미있게 직접 만드는 것이 좋습니다. 이전에 배운 것을 테스트할 수 있는 좋은 기회입니다. 세 가지 매개 변수를 사용 하 여 Math.Lerp 호출: 이 경우 1과 0 사이 보간 하는 두 값 및 히트 애니메이션이 시작 된 이후 초 시간. 그런 다음 Lerp는 결과 배율을 계산합니다. 예를 들어 0초에 1을 반환하고 1초에 0을 반환하고 0.75초에 0.25를 반환합니다.

리그를 설정하려면 캐릭터를 마우스 오른쪽 버튼으로 클릭하고 휴머노이드를 선택합니다. 캐릭터와 함께 새 창이 열리며, 여기서 Unity는 캐릭터의 장비(근육과 뼈)와 일치시키려고 시도합니다. 때로는 이러한 매개 변수가 무엇을 의미하는지 상상하기 어려울 수 있습니다. 고맙게도, 검사기의 전환 설정 바로 아래에 있는 전환 그래프는 각 애니메이션이 어떻게 구성되는지 정확하게 보여줍니다. 현재 게임 개발자 아카데미에서는 아바타 마스크에 대한 튜토리얼이 없습니다. 유니티 테크놀로지스의 이 튜토리얼은 https://youtu.be/1dMoRECcstQ 간단한 이동 애니메이션을 구현하는 방법과 강체 구성 요소를 사용하여 플레이어를 이동하는 방법을 보여 드리고자 합니다. 광대가 명중되면, 당신은 소리를 재생할 수 있습니다. 먼저 애니메이션 녹화 모드를 중지한 다음 프로젝트 브라우저에서 오디오/스플래터를 계층구조의 광대 게임 오브젝트로 드래그 앤 드롭합니다. 지금까지는 좋았어요. 이제 각 애니메이션이 끝나자마자 광대가 이동수평및 이동수직으로 전환하도록 할 수 있습니다.

한 상태에서 다른 상태로 전환하는 것을 전환이라고 합니다. 이제 애니메이션에 대한 플레이어 컨트롤러를 코딩하는 이 단원에서는 장면에서 애니메이션을 사용하는 방법을 살펴보겠습니다.