애니메이션 블루프린트

Animation Blueprint, 애니메이션 블루프린트란 복잡한 애니메이션 동작을 만들고 제어하는 데 사용되는 비주얼 스크립트입니다.

Windows
MacOS
Linux

Animation Blueprint (애니메이션 블루프린트)는 스켈레탈 메시 의 애니메이션을 제어하는 특수 블루프린트 입니다. 그래프는 애니메이션 블루프린트 에디터 에서 편집하며, 여기서 애니메이션 블렌딩, 스켈레톤의 본 직접 제어, 로직을 구성하여 각 프레임에 사용할 스켈레탈 메시의 최종 애니메이션을 최종 결정하게 됩니다.

애니메이션 블루프린트 의 예제는 애니메이션 콘텐츠 예제 문서의 1.2 섹션에서 찾아보실 수 있습니다.

애니메이션 블루프린트 생성 및 탐색

애니메이션 블루프린트 작업에 뛰어들기 전, 그 생성법과 애니메이션 블루프린트 인터페이스를 알아둬야 합니다.

애니메이션 블루프린트 작업하기

각 프레임의 최종 애니메이션 제작을 위해 함께 사용되는 애니메이션 블루프린트의 주요 컴포넌트는 두 가지입니다. 특히 이벤트 그래프 는 값을 업데이트한 다음 그 값을 애님 그래프 에 사용하여 스테이트 머신, 블렌드 스페이스, 또는 기타 노드를 돌릴 수 있으며, 이로 인해 여러 애니메이션 시퀀스나 포즈와의 블렌딩으로 다른 시스템에 Notify (노티파이)를 발동시켜 동적인 애니메이션 주도형 이펙트가 일어나도록 할 수 있습니다.

서브 애니메이션 블루프린트 인스턴스 작업하기

다양한 캐릭터용 애니메이션 블루프린트를 만들 때, 그 캐릭터 사이에 자동화 로직을 공유하지 않는다는 것은 드문 일입니다. 예를 들어, 하나의 캐릭터에 적용된 물리 애니메이션 또는 애님 다이내믹스 가 있는데 다른 캐릭터에도 적용하고 싶다 칩시다. Sub Anim Instance (서브 애님 인스턴스) 노드로 접근하려는 별도의 애니메이션 블루프린트에 대한 레퍼런스를 생성하고 다른 애니메이션 블루프린트 내 로직 전부를 포함시킬 수 있습니다.

이렇게 하면 커다란 애니메이션 블루프린트를 작은 개별 블루프린트로 나눈 뒤, 그것을 다른 애니메이션 블루프린트 안에 포함시킬 수 있습니다. 예를 들어 엄격히 "Locomotion"(이동)에 쓰이는 애니메이션 블루프린트가 하나 있고, 물리 기반 애니메이션을 처리하는 서브 애님 인스턴스가 있을 수 있습니다. 서브 애니메이션 블루프린트의 멤버 변수 역시 부모 애니메이션 블루프린트 내의 입력 핀으로 노출시키면, Sub-Graph Input 노드가 Sub Anim Instance 에 In Poses 를 노출시킬 수 있습니다 (아래 예 참고).

SubAnimInstance.png

서브 애님 인스턴스 작업을 할 때는, 반드시 동일한 스켈레톤을 그 스켈레톤이 들어있는 아우터 애니메이션 블루프린트로 사용해야 합니다.

서브 애님 인스턴스 사용 문서에서 서브 애니메이션 블루프린트 인스턴스가 캐릭터의 이동에 영향을 끼치도록 하는 예제를 찾아보실 수 있습니다.

자손 애니메이션 블루프린트 작업

캐릭터와 애니메이션 블루프린트를 만들어 구성할 때, 캐릭터가 여럿 있는데 기본은 비슷하지만 각기 다른 상태마다 각기 다른 애니메이션이 필요한 경우가 있습니다. 그럴 때 각 캐릭터마다 애니메이션 블루프린트를 만들기 보다는, 기존 애니메이션 블루프린트의 자손 애니메이션 블루프린트 를 사용하여 대체하고자 하는 애니메이션을 덮어쓸 수 있으면 좋을 것입니다. 자손 애니메이션 블루프린트는 부모에서 모든 것을 상속받으므로, 애셋 오버라이드 에디터 를 통해 덮어쓸 애니메이션을 지정할 수 있습니다.

예를 들어, 인간형 캐릭터가 둘 있는 데, 하나는 인간이고 하나는 늑대인간이라 칩시다. 둘 다 걷기, 달리기, 점프, 웅크리기 등이 가능합니다. 하지만 그 동작은 완전히 다를 것입니다. 그러한 동작 사이의 이동 로직은 동일하지만, 동작 자체는 다릅니다. 물론 별개의 애니메이션 블루프린트를 두 개 만들어도 괜찮습니다만, 시간 절약을 위해 자손 애니메이션 블루프린트를 만들고 덮어쓸 애니메이션을 선택하면 됩니다.

자손이 있는 애니메이션 블루프린트 생성 및 덮어쓰기 관련 예제 안내는 애니메이션 블루프린트 오버라이드 문서를 참고하세요.

포스트 프로세스 애니메이션 블루프린트 할당

애니메이션 블루프린트는 스켈레탈 메시 애셋 디테일 패널을 통해 포스트 프로세스 애님 블루프린트 로 스켈레탈 메시에 직접 할당할 수 있습니다. 이렇게 하면 애니메이션 블루프린트가 스켈레탈 메시 컴포넌트의 메인 애님 인스턴스로 할당된 이후 항상 실행되는 애니메이션 블루프린트를 스켈레탈 메시에 할당할 수 있습니다. 스켈레탈 메시에 포스트 프로세스 애님 블루프린트를 할당하면, 로직을 다른 애니메이션 블루프린트로 복사할 필요 없이 애님 다이내믹스, 스켈레탈 컨트롤, 기타 애님 블루프린트 로직을 만들 수 있습니다.

ExamplePostProcess.png

보다 자세한 정보는 스켈레탈 메시 애셋 디테일 문서의 포스트 프로세스 애님 블루프린트 부분을 참고하세요.

애니메이션 블루프린트 라이브 편집

이 기능은 현재 실험단계이므로 예상대로 작동하지 않는 부분이 있을 수 있습니다.

애니메이션 블루프린트는 에디터에서 플레이하는 도중 실시간으로 편집하고 다시 컴파일할 수 있어 더이상 멈추고 변경사항을 적용하는 데 드는 반복처리 시간을 단축시킬 수 있습니다.

위 비디오에서는, 에디터에서 플레이 세션 도중 캐릭터의 스테이트 머신을 변경하고 있습니다.

라이브 편집 기능은 일반 - 실험단계 섹션의 Tools (툴) 아래 Enable Live Recompilation Of Animation Blueprints (애니메이션 블루프린트 라이브 리컴파일 활성화) 옵션으로 켜고 끌 수 있습니다.

LiveEditing.png

디버깅할 애니메이션 블루프린트 인스턴스의 정의는 애니메이션 블루프린트 안에서 디버그 필터 를 사용하여 할 수 있습니다.

DebugOption.png

디버깅할 애니메이션 블루프린트 인스턴스를 선택하면, 레벨에서 현재 캐릭터가 처한 애니메이션 상태가 애니메이션 블루프린트 에디터에 반영됩니다.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback