KoreanFoodie's Study

언리얼 블렌드 스페이스 (Blendspace) 본문

Game Dev/Unreal C++ : Study

언리얼 블렌드 스페이스 (Blendspace)

GoldGiver 2022. 4. 6. 20:08

블렌드 스페이스

만약 속도에 따라 걷는 애니메이션과 뛰는 애니메이션을 재생하고 싶다면 어떻게 할까? 단순히 속도가 낮을 때는 걷는 애니메이션을, 높을 때는 뛰는 애니메이션을 연결하면 될 것 같지만, 속도가 float 값으로 연속적일 때는 속도가 바뀌는 시점에 따라 애니메이션이 급속도로 변하는 것이 부자연스러워 보일 것이다.

애니메이션 동작에서의 자연스러움을 보장하면서, 프로그래머가 특정 변수에 맞게 애니메이션을 설정하는 일 따위의 하드코딩을 줄이기 위해, 언리얼에서는 블렌드 스페이스를 제공하고 있다.

블렌드 스페이스란, 말 그대로 애니메이션들을 주어진 input 값에 맞게 호출하도록 섞어(블렌드) 만든 공간(스페이스) 라고 볼 수 있다.

 

 

예시

블렌드 스페이스를 만들면, 왼쪽에서 축의 최댓/최솟값을 결정하고, grid 갯수를 설정해 input 에 따른 변화를 얼마나 줄지를 결정한다.

 

위는 2D 블렌드 스페이스로, 2 종류의 입력 값에 따라 애니메이션을 자연스럽게 전환해주고 있다.

 

애님 그래프에서는 위와 같이 변수만 연결해 주면 된다. 물론 input 값들은 변수를 선언하고, 이벤트 그래프에서 실제 캐릭터의 속도나 방향을 참고해 설정해 주어야 한다.

1D 블렌드 스페이스는 input 이 한 개인 녀석으로, 원리는 2D 블렌드 스페이스와 동일하다!

Comments