Company
교육 철학

캐릭터 애니메이션(Sequence)

시퀀서를 사용한 애니메이션은 액터의 단순한 움직임을 만드는데 편리합니다. 하지만 사람과 같은 복잡한 움직임은 표현하기 어려습니다.
게임에서는 보통 사람 형태의 캐릭터를 많이 사용합니다. 캐릭터가 걷거나 달리거나 점프하는 동작은 시퀀서만으로는 간단히 만들 수 없는데, 이는 몸의 각 부분 움직임을 세밀하게 설정해야 하기 때문입니다. 단순히 걷는 동작만 해도 허벅지, 정강이, 발목의 움직임과 몸통, 팔의 구부러짐 등 여러 요소를 설정해야 하므로 복잡합니다.
이 때문에 대부분은 전용 모델링 툴로 캐릭터 모델과 애니메이션 파일을 제작한 뒤 게임 엔진에서 이를 불러와 사용합니다. 이 과정에는 전문 기술과 학습이 필요합니다. 언리얼 엔진만으로는 만들기 어렵기 때문입니다.
하지만 언리얼 엔진에서 비교적 쉽게 할 수 있는 것은 미리 만들어진 모델과 애니메이션 데이터를 불러와 조합하여 캐릭터를 움직이게 하는 것입니다. 예를 들어, 걷기·달리기·점프하기 같은 애니메이션 파일을 불러와 플레이어의 입력에 맞게 캐릭터를 제어할 수 있습니다.
이번에는 OpenWorld로 새로운 레벨을 생성해 줍니다.
캐릭터 액터를 만들어 봅시다.
1.
Character 액터 선택
레벨에 배치된 Character 액터를 선택합니다.
2.
메시 설정
[디테일] 패널 → [일반] → [메시] 항목에서 캐릭터에 사용할 스켈레탈 메시(Skeletal Mesh) 를 지정합니다.
3.
스켈레탈 메시란?
골격 구조(bone)를 가진 메시.
뼈와 관절 구조가 있어 캐릭터의 몸을 자유롭게 움직일 수 있음.

위치 조정 단계

1.
Character 인스턴스 Z 값 설정
[디테일] 패널에서 Character(인스턴스) 를 선택합니다.
[위치]의 Z 값90.0으로 설정합니다.
2.
Mesh Z 값 설정
Character 내부의 [Mesh(CharacterMesh0)] 항목을 선택합니다.
[위치]의 Z 값90.0으로 설정합니다.
3.
결과
위 설정을 하면 캐릭터의 발이 지면에 닿도록 위치가 맞춰집니다.

캐릭터에 애니메이션 설정하기

언리얼 엔진에서 캐릭터에 애니메이션을 적용할 때 고려할 요소는 애니메이션 모드입니다. 캐릭터의 스켈레탈 메시에는 두 가지 방식이 있습니다:

1. 애니메이션 에셋

애니메이션 파일 자체를 불러오는 방식
캐릭터에 해당 애니메이션 에셋을 설정하면 그대로 재생됨

2. 블루프린트

애니메이션을 프로그램적으로 제어하는 방식
내부적으로는 애니메이션 에셋을 사용하지만, 다양한 조건과 처리를 통해 제어 가능
단순히 정해진 애니메이션만 재생하려면 에셋 사용,
여러 조건에 따라 제어하고 싶다면 블루프린트 사용이 적합

애니메이션 모드 변경 방법

1.
Character 선택 후 → [디테일] 패널 → [애니메이션] 버튼 클릭
→ 애니메이션 관련 설정 메뉴가 나타남
2.
[애니메이션] 항목에서 [애니메이션 모드] 확인
기본값: Use Animation Blueprint
3.
이 값을 Use Animation Asset으로 변경
이렇게 하면 애니메이션 에셋을 직접 사용할 수 있음
즉,
정해진 애니메이션(걷기, 뛰기, 점프 등)을 그대로 쓰고 싶을 때Use Animation Asset
플레이어 입력이나 상태에 따라 동적으로 제어하고 싶을 때Use Animation Blueprint
레벨 플레이 버튼을 누르면 애니메이션이 정상 작동 된다.

시퀀서로 캐릭터 애니메이션 만들기

시퀀서를 사용하여 캐릭터 애니메이션을 만들 수도 있습니다. 간단한 절차를 따라 진행해 보겠습니다.
1.
시퀀서 생성하기
[시네마틱] 탭 → [시퀀서 생성] 버튼을 클릭합니다.
새로운 시퀀스 이름을 지정하고 확인을 누릅니다.
1.
캐릭터 트랙 추가하기
시퀀서 내에서 '+ 트랙' 버튼을 클릭합니다.
[액터] → [캐릭터] 옵션을 선택하여 캐릭터 트랙을 추가합니다.
2.
애니메이션 트랙 추가하기
캐릭터 트랙 아래 [+ 트랙] 버튼을 클릭합니다.
[애니메이션] 옵션을 선택하여 애니메이션 트랙을 추가합니다.
3.
애니메이션 키프레임 설정하기
타임라인에서 키프레임을 배치할 위치를 선택합니다.
애니메이션 트랙에서 우클릭하고 [키 추가]를 선택합니다.
원하는 애니메이션 에셋을 선택합니다.
4.
트랜지션 설정하기
서로 다른 애니메이션 간의 전환을 부드럽게 하기 위해 블렌드 시간을 조절할 수 있습니다.
키프레임을 선택한 후 [디테일] 패널에서 블렌드 설정을 조정합니다.
이러한 방식으로 시퀀서를 사용하면 캐릭터가 특정 시점에 어떤 애니메이션을 수행할지 타임라인 기반으로 정확하게 제어할 수 있습니다. 단, 시퀀서는 주로 컷씬이나 미리 정해진 시나리오에 적합하며, 게임플레이 중 플레이어 입력에 반응하는 애니메이션은 앞서 설명한 애니메이션 블루프린트를 사용하는 것이 더 효과적입니다.

시퀀서와 애니메이션 블루프린트 조합하기

복잡한 애니메이션 시퀀스를 만들기 위해 시퀀서와 애니메이션 블루프린트를 함께 활용할 수도 있습니다:
시퀀서: 카메라 이동, 타이밍, 전체적인 장면 구성에 활용
애니메이션 블루프린트: 캐릭터의 세부 동작과 반응을 프로그래밍적으로 제어
이 두 가지 기법을 조합하면 고품질의 게임 내 컷씬이나 복잡한 캐릭터 상호작용을 구현할 수 있습니다.