본문 바로가기

언리얼

[언리얼 엔진 / Unreal Engine] Mixamo 애니메이션 Metahuman에 리타겟팅하기

필자가 해당 작업을 하는 이유는 애니메이션을 만들 때, 모션캡쳐, Mixamo 데이터로 바디 애니메이션을 적용하고 얼굴은 Live link를 활용하여 작업하기 위함이다.

 

 

 

메타휴먼 캐릭터를 내보내기 위해 메타휴먼의 스켈레탈 메시를 우클릭하여 에셋 액션 - 익스포트를 통해 FBX 파일로 내보내준다.

이때 레벨 오브 디테일에 체크를 해제한 뒤 익스포트 해준다.

 

해당 FBX를 모두 블렌더에 가져온다. (사진은 Rig를 끈 상태이다.)

 

메쉬만 임포트하기 위해 메쉬만을 새로운 컬렉션으로 빼와서 합치는 작업을 진행하였다. (메쉬만을 선택 후 뷰포트에 마우스 대고 Ctrl + j)

 

그리고 해당 메쉬를 내보냈다. 이제 Mixamo로 들어간다.

https://www.mixamo.com/#/

 

Mixamo

 

www.mixamo.com

 

UPLOAD CHARACTER 버튼을 눌러 방금 내보낸 메타휴먼 캐릭터를 임포트 해준다.

 

옆에 있는 그림과 같이 마커를 놓아주면 된다.

 

그 후, Mixamo에서 해당 캐릭터(애니메이션 없는 기본 버전)와 원하는 애니메이션을 다운받는다.

기본 버전을 다운받는 방법은 아래와 같다.

이렇게 Find Animation이라고 되어있어야 한다. 애니메이션이 되어있다면 X를 눌러 제거해주자.

T-Pose로 다운로드 해주자.

 

 

이후 해당 T-Pose를 언리얼로 불러온다. 따로 설정해줄 것 없이 그냥 임포트 해주면 된다.

 

이후 애니메이션을 불러온다. 이땐, 스켈레톤을 방금 불러온 T-pose의 스켈레톤으로 설정해준다.

 

이제 Retargeting을 해주면 된다.

https://www.youtube.com/watch?v=bNj6fzOVCCo

해당 영상의 13분부터 참고하여 IK릭을 생성 및 리타게터를 생성해준다. 

해당 영상에서 리타게터를 생성할 때, T-Pose로 맞추는 부분이 있는데 우리는 애초에 메타휴먼을 Mixamo에 데려왔으므로 T-Pose로 맞출 필요가 없다.

 

다 되었다면 애니메이션을 선택하고 익스포트 해준다.

 

 

이제 이 애니메이션을 원하는 메타휴먼에 적용하는 방법을 알려주겠다.

먼저 레벨에 내가 애니메이션을 입히고자 하는 메타휴먼의 블루프린트를 올려준다.

우선 콘텐츠 빈 공간에 우클릭 - 시네마틱 - 레벨 시퀀스를 추가해준다.

 

시퀀서 탭에서 +트랙을 누르고 액터를 시퀀서로 -> BP_메타휴먼을 선택해준다.

 

그런 다음 Body의 +을 누른 뒤 애니메이션, 아까 리타게팅 후 임포트한 애니메이션을 선택해준다.

그런 다음 시퀀서에서 MetaHuman_ControlRig을 삭제해준다.

 

그러면 이제 애니메이션이 잘 작동할 것이다.