본문 바로가기

Unreal/Udemy 강의

Unreal Engine 4 C++ The Ultimate Shooter Course Section 8-2

Turn in Place Animations

이제 애니메이션을 할당해보자.

기존 애니메이션 중 Idle_Turn_90_Left와 Idle_Turn_90_Right 애니메이션을 복사하여 사용할 것이다.

 

각각의 애니메이션의 필요없는 뒷부분을 삭제해주자.

 

이제 Idle 애니메이션을 고쳐줄 것이다.

우리는 아래 부분만 움직일 것이기에 기존 애니메이션 삭제후 2가지 스테이트 머신을 새로 생성해주자.

각각 상체와 하체를 담당한다.

 

상체의 경우 변화가 없기에 기존에 사용하던 애니메이션을 그대로 사용해주면 된다.

 

하체의 경우 90도 왼쪽 회전과 90도 오른쪽 회전 2가지가 추가 된다.

 

먼저 Idle -> Idle_Turn_90_Left_trimmed 조건이다.

움직이지 않아야하고,  Root Yaw Off set 값이 90을 넘어야 하며, 공중에 있지 않아야 해당 애니메이션을 재생할 수 있다.

 

Idle -> Idle_Turn_90_Right_trimmed 조건의 경우도 굉장히 유사하다.

나머진 동일하고, Root Yaw Off set 값이 여기서는 -90 보다 작은 경우여야만 가능하다.

 

Idle_Turn_90_Left_trimmed -> Idle 조건을 보자.

만약 90도 회전 애니메이션 진행률이 10프로 미만이면 애니메이션이 끝나가는 것이므로 원상태로 복구해주자.

이외에 움직이는 중이거나, 공중에 있거나, Root Yaw Off set 값이 0보다 작거나 이 모든 조건 중 하나라도 만족하면 원상태로 돌아가야 한다.

 

Idle_Turn_90_Right_trimmed -> Idle 조건도 굉장히 유사하다.

여기선 Root Yaw Off Set 값이 0보다 큰 경우만 제외하면 나머지는 모두 동일하다.

 

이제 해당 스테이트 머신 2개를 Layerd blend per bone 함수를 통해 섞어주자.

 

섞는 뼈의 기준 점은 spine_01(척추뼈)를 기준으로 섞어 주게 된다.