본문 바로가기
Unreal/Manual

Unreal 캐릭터 걷기, 뛰기, 전력질주 Blend Space 구현

by Dev_카페인 2023. 11. 22.
반응형

 

[Unreal] 캐릭터 걷기, 뛰기, 전력질주 Blend Space 구현

 

블렌드 스페이스는 다수의 애니메이션 또는 포즈를 1차원 또는 2차원 그래프로 구성하여 블렌딩할 수 있는 에셋입니다. 그런 다음 게임플레이 입력 또는 다른 변수를 통해 블렌딩을 제어할 수 있는 애니메이션 블루프린트 내에서 이 그래프를 레퍼런스할 수 있습니다. 블렌드 스페이스를 사용하면 거의 모든 유형의 블렌딩 배열을 애니메이션에 사용할 수 있습니다.

 

  • 프로젝트에 다양한 방향의 스켈레탈 메시(Skeletal Mesh) 또는 유사한 애니메이션 시퀀스(Animation Sequence) 를 임포트한 상태여야 합니다.

블렌드 스페이스는 여러 포인트에서 그래프를 따라 애니메이션을 지정하는 에셋입니다.

이 포인트를 샘플(sample) 이라고 합니다. 전체 애니메이션은 각 축의 입력 값을 바탕으로 그래프에 있는 포인트 사이의 블렌딩을 통해 계산됩니다.

 

 

블렌드 스페이스

블렌드 스페이스는 원하는 수의 애니메이션을 구성하여 여러 입력값에 따라 서로 블렌딩할 수 있는 그래프입니다.

docs.unrealengine.com

 

 

작업하기에 앞서 애니메이션을 준비해야한다.

기본적으로 필요한 것을 나열하자면

유휴상태 애니메이션과

걷기, 뛰기, 전력질주중 최소 한개 종류의 Forward, Back, Left, Right 애니메이션이 있어야 합니다.

 

애니메이션이 준비 되었다면 속도와 방향에 따른 블렌드 스페이스를 생성할 것입니다.

 

콘텐츠 폴더내에서 추가 또는 우클릭을 통해 애니메이션->블렌드 스페이스를 생성합니다.

애니메이션을 재생하기 위한 스켈레톤을 만들어주고 이름 앞에 BS 접두사를 붙여 생성합니다.

 

 

생성한 블렌드 스페이스를 열어 가로축과 세로축에 이름과 값을 넣어줍니다.

가로축과 세로축 설정

가로축 이름 : Direction

최소 축 값 : -180, 최대 축 값 : 180

방향은 평면상의 회전 값을 나타냅니다.

0도 : Forward

90도 : Right

180도, -180도 : Back

-90도 : Left

 

세로축 이름 : Speed

최소 축 값 : 0, 최대 축 값 : 600

멈춰있는 속도와 최대 속도입니다.

 

우측 하단 에셋 브라우저에서 원하는 애니메이션을 드래그해서 넣습니다.

블렌드 스페이스의 그래프 설정

속도가 0일때는 유휴 애니메이션을 드래그해서 놓아줍니다.

드래그 시 왼쪽 Shift를 눌러 칸에 맞게 설정할 수 있습니다.

컨트롤을 누르고 있으면 마우스 좌표에 따라 예시 방향과 속도를 설정할 수 있습니다.

 

 

 

만들어둔 ABP (AnimInstance)가 있다면 블렌드 스페이스를 가져와 설정해봅니다.

반응형