본문 바로가기
언리얼 블루프린트/애니메이션

[언리얼5 블루프린트] 캐릭터 달리기, 점프 동작 설정하기

by 디버그러 2024. 7. 4.

이 캐릭터는 플레이어가 아닌 적을 기준으로 만들었습니다.
캐릭터 달리는 동작 설정하는 방법입니다.
 

 
캐릭터 스켈레탈 메시 → 생성 → 블렌드스페이스를 만듭니다.
치즈로코모션으로 이름 변경했습니다.
 

 
만든 블렌드 스페이스에 들어갑니다.
왼쪽 에셋 디테일에서 가로, 세로 축의 값을 최소 축 값은 -1, 최대 축 값은 1 로 설정했습니다.

가로 축은 좌우, 세로 축은 앞뒤로 이름 변경했습니다.

 

※ 축 값을 실수로 -200,200으로 설정하니 캐릭터 이동 모션이 나오지 않는 오류 발생
 

 
그래드에 스냅에 체크하면 애니메이션을 배치할 때 선에 따라 뚝뚝 끊겨서 분별하기 편합니다.
 

 
표의 중심에 서있는 애니메이션을 배치했습니다.
 

 
앞에 가는 모션과 왼쪽 오른쪽 뒤쪽 가는 모션을 각각 끝에 배치하여 마름모를 만들었습니다.
Ctrl을 눌러서 이동 방향마다 모션을 미리볼 수 있습니다.
 

 
왼쪽 에셋 디테일에서 스무딩 시간을 넣어주면 동작 사이사이가 자연스러워집니다.
 

 
이전 게시물에서 만들었던 애님 블루프린트에 들어갑니다.
없으면 스켈레톤 메시 우클릭 → 생성 → 애님 블루프린트 만들 수 있습니다.
 

 
아까 만든 블렌드 스페이스(로코모션)을 드래그하여 가져옵니다.
 

 
원래 있던 OutPut Pose 노드와 연결합니다.
그 후 None 2개를 변수로 승격합니다.
 

 
구분하기 쉽게 좌우, 앞뒤로 이름 변경했습니다.
 


이벤트그래프에서 노드를 연결해줍니다.
Try Get Pawn Owner 노드에 Get Actor Transform, Get Last Movement Input Vector, Inverse Transform Direction 노드를 연결했습니다.
애님그래프에서 변수로 승격시킨 좌우, 앞뒤를 가져와 각각 Y, X 값에 연결했습니다.


점프를 위한 노드도 추가했습니다.
Get Movement Component, Is Falling 노드의 Return Value를 변수로 승격하여 점프로 이름 변경했습니다. 

 

 
점프 모션도 추가해 보겠습니다.
애님그래프에 점프 애니메이션을 추가합니다.

 

 
Blend Poses by bool 노드를 통해 점프를 할 때가 아니면 걷는 모션이 나오도록 만들었습니다.
여기서 방금 만든 점프 변수를 Active Value에 넣어 완성합니다.
 

 

 
사용한 언리얼 버전: 5.4.1