Unity/Unity [Tutorial]

유니티 Unity | [Tutorial] Character Move_#2 Animation

재호우96 2020. 5. 25. 15:21
반응형

 

* 1편의 다음 게시글 입니다.

https://jaeho0613.tistory.com/134

 

유니티 Unity | [Tutorial] Character Move_#1 Auto Rigging

* 설명 부록 unity version : 2019.3.6 f1 프로젝트 명 : 3D 캐릭터 기초 이동 설명 : 3D 캐릭터의 다양한 이동 로직을 만들어 봅니다. 기능 - 각 3가지 타입의 이동 구현 - 간단한 레이 케스트를 활용한 땅 ��

jaeho0613.tistory.com

 


3. Animation

Run : 뛰는 모션

Walk : 걷는 모션

Jump : 점프 모션

Idle : 대기 모션

Dance : 춤 모션

 

총 5가지 애니메이션을 구성합니다.

 

https://www.mixamo.com/

 

Mixamo

 

www.mixamo.com

 

1편에서의 믹시모 사이트에서 적당한 애니메이션을 구합니다.

 

* 모든 애니메이션 설정에 In Place를 체크합니다.

 

대기 모션
걷는 모션
뛰는 모션
뛰는 모션
춤 모션

 


 

다운 받은 파일을 유니티에 임포트해준후

 

휴머노이드 설정을 해줍니다.

 

그리고 애니메이션 클립을 따로 복사하는데요.

그 이유는

 

다운 받은 모델 파일은 읽기 전용입니다.

비활성화..!

그래서 세세한 부분을 설정할 수 없죠.

 

이를 위해서 애니메이션 클립만 복사를 해서

따로 설정을 해주기 위함 입니다.

 

이렇게 애니메이션 클립만 복사가 됐다면

 

애니메이션 컨트롤에 클립들을 넣어줍니다.

 

우선 동작하는지만 확인하기 위해서

 

이렇게 트리거만 이용해서 모션이 정상 작동하는지 확인하겠습니다.

* 이부분은 따라하지 않으셔도 됩니다.

 

잘 작동하네요!

 


3-1. Animation FSM 설정

Move Layer

 

Animation Layer

- Layers

Move Layer : 움직임을 담당하는 레이어 입니다.

Animation : 춤, 죽음, 감정표현 등을 담당하는 레이어 입니다.

 

레이어를 2개로 분리하여 구성했는데

 

레이어는 기본적으로 가중치를 적용하여

특정 애니메이션의 범위를 지정할 수 있습니다.

 

Animation Layer의 설정중 Weight 속성에 따라서

 

Move Layer의 Animation이 보여질 수도 있고

Animation Layer의 Animation만 보여질 수도 있습니다.

 

저는 Animation Layer의 가중치를 최대로 높여서

특정 애니메이션중 일때는 움직이는 모션이 보이지 않게 했습니다.

 

Dance 클립의 트랜지션은 

Trigger(Dance)로 설정했습니다.

 

// 추가사항

* New State는 Empty 클립으로 아무 모션도 들어있지 않는 공백입니다.

- Movement Blend Tree

Move Layer의 움직임은 블랜드 트리를 활용했습니다.

위 사진처럼 블랜드 트리를 만들어주고

 

위 사진처럼 설정해주시면 됩니다!

 

- Jump Clip

Jump 모션은 Has Exit Time을 해제하고

Transition Duration을 0.25로 설정해 적절하게 

움직임 모션이랑 이어지게 했습니다.

 

사용한 파라미터는 총 3개네요!

 


애니메이션 확인!

잘 동작하네요!

 

다음편에선 스크립트로 캐릭터의 움직임을 구현하겠습니다.


반응형