캐릭터 애니메이션 시스템의 생성
- 스켈레탈 메시 컴포넌트의 애니메이션 블루프린트 클래스를 지정
- 캐릭터가 초기화될 때 AnimInstance 클래스의 인스턴스를 생성
- 캐릭터는 GetAnimInstance 함수를 사용해 애니메이션 인스턴스를 얻을 수 있음
- 애니메이션 인스턴스는 GetOwningActor 함수를 사용해 자신을 소유한 액터 정보를 얻을 수 있음
캐릭터 애니메이션 시스템의 설계
- 애니메이션 블루프린트는 이벤트 그래프와 애님 그래프의 두 영역으로 구성
- 이벤트 그래프에서는 이벤트로부터 상태를 파악할 수 있는 주요 변수를 저장하는데 사용
- 애님 그래프에서는 저장된 변수로부터 지정된 상태의 애니메이션을 재생
- 애님 그래프의 복잡한 상태는 State Alias로 분리해 효과적으로 설계 가능
실습
- Locomotion : 한 곳에서 다른 곳으로 이동할 때 발생되는 다양한 캐릭터의 움직임에 사용되는 모션, 기법, 테크닉을 지칭
- 움직임 자체를 지칭할 때도 있음
- 다양한 지형, 지물을 접할 때 변화되는 세부적인 움직임을 지칭하기도 함
- 로코모션은 굉장히 복잡할 수 있기 때문에 구성을 다른 곳에서 진행하고 결과를 캐시로 저장해서 불러올 수 있음
- 애니메이션 혼합
- Animation - Legacy - Blend Space 1D
- 조건에 따라 혼합되는 정도 가능
- State Alias를 통해 복잡한 상태를 합쳐서 분리시킬 수 있음
참고
https://docs.unrealengine.com/5.3/ko/state-machines-in-unreal-engine/