UE4

[UE4] Animation Blueprint

Honey Badger 2022. 9. 30. 04:17

Animation Blueprint

  코드로 에셋 경로를 복사해와 일일히 애니메이션을 지정하는 방법은 게임의 규모가 커지만 관리적인 한계에 부딪힌다. 그래서 언리얼은 체계적으로 애니메이션을 설계하도록 별도의 시스템을 제공하는데, 이를 애니메이션 블루프린트라고 한다.

 

 

생성

Animation Blueprint Asset을 생성하려면 콘텐츠 브라우저에서 애니메이션 폴더를 선택한 후 신규추가>애니메이션>애니메이션 블루프린트 메뉴를 선택하고 이 블루프린트와 연결될 캐릭터 스켈레톤 에셋을 지정해주면 된다. 

 

 

관리

  애니메이션 블루프린트는 애님그래프 로직에 따라 동작하는 캐릭터 애니메이션 시스템을 구동시키는데, C++코드에서는 AnimInstance라는 클래스로 이를 관리할 수 있다. 

  

 

연결

  스켈레탈 메시 컴포넌트는 자신이 관리하는 캐릭터의 애니메이션을 이 애님 인스턴스에 위임하는 구조로 설계되어 있다. 따라서 스켈레탈 메시가 이 블루프린트를 실행시키려면 블루프린트 에셋의 클래스 정보를 애님 인스턴스 속성에 지정해줘야 한다. 참고로 클래스 정보는 에셋 경로에 _C를 추가로 붙여 가져올 수 있다. 

Mesh->SetAnimationMode(EAnimationMode::AnimationBlueprint);
	static ConstructorHelpers::FClassFinder<UAnimInstance> WARRIOR_ANIM(TEXT("AnimBlueprint'/Game/Animations/Kwang_AnimBlueprint.Kwang_AnimBlueprint'")); //클래스정보 가져오기.
	if (WARRIOR_ANIM.Succeeded())
	{
		Mesh->SetAnimInstanceClass(WARRIOR_ANIM.Class);
	}

SetAnimationMode()로 애니메이션 블루프린트를 사용할 것임을 Set하고 에셋의 클래스 정보를 받아와 SetAnimInstanceClass()를 이용해 스켈레탈 메쉬에 연결해준다.

'UE4' 카테고리의 다른 글

[UE4] Pawn & Character  (0) 2022.09.30
[UE4] 코드로 에셋 적용시키기  (0) 2022.09.30
[UE4] PlayerInput값을 게임에 바로 전달하기  (0) 2022.09.30
[UE4] An Unreal process has crashed  (0) 2022.09.30
[UE4] InputComponent  (0) 2022.09.30