Unreal
[Unreal] Mixamo 애니메이션 리타겟팅
JiHxxn
2024. 5. 12. 15:28
🤔 애니메이션 리타겟팅 이란?
리타겟팅 된 애니메이션을 여러 스켈레탈 메시에 사용하여, 애니메이션을 공유하는 법.
이라고 언리얼 공식 문서에 적혀 있음.
쉽게 말해 비율이 다른 캐릭터 간에 애니메이션을 재사용할 수 있게 해주는 기능이다.
⚙️ 환경 셋팅
- 언리얼 버전 : v5.4.1
- 언어 : English
- 프로젝트 세팅 : Games - Third Person(삼인칭)
1. 프로젝트 셋팅 및 환경 설정
- Games - Third Person(삼인칭) - ProjectName 설정 (AnimationRetargeting)
- Content Browser 고정하기
- 좌하단 Content Drawer 탭 클릭 → Dock in Layout 클릭
- 새롭게 추가해 관리할 폴더를 생성
- CustomCharacter 생성 후 하단에 또 MixamoToAnimation 폴더 생성
- 폴더 색 변경은 원하는 폴더 클릭 후 마우스 우클릭 후 ‘Set Color’를 선택해 적용해 주면 됨.
2. Resources 다운 및 Import
- mixamo에서 캐릭터 FBX 파일 다운로드
- ybot 선택 후 오른쪽 다운로드 버튼 클릭 후 ‘t-pose’ 로 선택 후 다운
- 애니메이션 카테고리 클릭 후 원하는 애니메이션을 다운받아 주면 된다.
-
- mixamo에서 캐릭터 FBX 파일 다운로드
- ybot 선택 후 오른쪽 다운로드 버튼 클릭 후 ‘t-pose’ 로 선택 후 다운오른쪽 다운로드 버튼 클릭 후 Skin에 Wihtout Skin를 선택하여 다운
- mixamo에서 캐릭터 FBX 파일 다운로드
-
- 다운 받은 Y봇을 만들어준 ‘MixamoToAnimation’에 Import All 시켜줌.
- 후에 에러 메시지 창이 나올 수 있는데, 무시해 줘도 된다.
- Ybot을 먼저 Inport 해준 후 다운 받아 놓은 애니메이션도 추가시켜준다.
- Skeleton에 먼저 넣어준 Ybot이 들어가 있는지 확인
3. Set IK Retarget
- IK Rig 생성 후 이름 변경(IKRig_Mixamo)
- 마우스 우클릭 - Animation - Retargeting - IK Rig
- 만들어준 IKRig에 들어가 우측 ‘Preview Skeleton’을 YBot으로 설정
- 마우스 우클릭 - Animation - Retargeting - IK Rig
- 가장 위의 있는 본을 선택하여 Set Retarget Root를 설정해 준다.
- 부위별 각각 Chain을 추가해 준다.
- 각각 부위를 이미지에 있는 Element와 ChainName와 똑같이 맞춰준다.
- IK ReTargeter 생성 후 이름 변경(IKReTargeter_Mixamo)
- 마우스 우클릭 - Animation - Retargeting - IK Retargeter
- 우측에 Sourct에 ‘Ybot’, Target에 ‘Mannequin’을 설정 후 ‘Mannequin’의 x축을 200으로 설정해 겹치지 않도록 설정
- 좌상단에 ‘Running Retarget’ or ‘Editing Reaterget Pose’ 토글 중 ‘Editing Reaterget Pose’ 선택
- Mannequin’의 포즈를 T-Pose로 수정해 준다.
- upperarm_l , upperarm_r 60도 회전
- TopView로 변경 후 lowerarm_l, lowerarm_r 40도 회전
- Hand_l, Hand_r 안쪽으로 10도 회전
- Chain이 잘 연결되어 있는지 확인 후 우측에 Auto-Map Chains 클릭 후 Map All(Exaxt)
- AseetBower 탭을 클릭하고 Mixamo에서 다운 받아준 Animation을 더블클릭하여 실행해 준다.
- 작동이 잘 된다면 Chain이 잘 연결된 것.
- AseetBower 탭이 없다면 상단에 Windo → AseetBower를 선택해 추가해준다.
- 다운 받아준 애니메이션 마우스 우 클릭 → Reatergeting Animations
- 5.4 버전부터는 우측 하단에 Auto Generate Retargeter 체크박스 해제 후 만들어준 IKRetargeter을 넣을 수 있다.
- 하단에 원하는 애니메이션 클릭 후 Export Animations
- ThirdPerson → Blueprints 폴더에 저장.
- 만들어준 애니메이션을 더블 클릭해 확인해서 제대로 작동하면 잘 적용된 것
4. 작동해 보기
- 애니메이션을 작동하기 위해 AnimationMontage를 만들어준다.
- BP_Third Person을 더블 클릭
- Event Graph에서 이벤트를 추가해 준다
- 빈 곳에 마우스 우클릭 후 KeyF를 검색해 F키를 눌렀을 시 이벤트를 작동할 노트를 추가
- Play Animation 노드를 추가해 ‘New Anim to Play’에 만들어준 AnimationMontage를 추가
- 빈 곳에 마우스 우클릭 후 KeyF를 검색해 F키를 눌렀을 시 이벤트를 작동할 노트를 추가
- 모든 작업이 완료되었으면 Compile 후 저장 해준다.
5. Play Animation
📒참고자료
믹사모 애니메이션 언리얼로 리타게팅 하는법 #mixamo #unrealengine