Unreal Engine 5 C++ Multiplayer Shooter
Mixamo에 로그인하고 적절한 캐릭터를 찾아 클릭한다.
그러면 프리뷰를 보고 애니메이션을 다운로드할 때 이 캐릭터를 사용할 것인지 묻는데 사용한다고 한다.
캐릭터를 다운로드한다.
- 언리얼 엔진의 기본 포즈인 A-포즈가 아닌, 유니티의 기본 포즈인 T-포즈를 하고 있는 것을 확인할 수 있다.
- 이것은 나중에 직접 수정해주어야 한다.
FBX 형식의 캐릭터를 프로젝트에 임포트한다.
- Skeletal Mesh를 임포트하고, 자체 Skeleton을 갖고 있으므로 Skeleton은 지정하지 않는다.
- 옵션을 그대로 두고 Import All 버튼을 클릭한다.
Skeleton Tree를 보면 언리얼 엔진의 Skeleton과 비슷하지만 구조와 이름이 조금씩 다른 것을 확인할 수 있다.
- 따라서, 애니메이션 리타겟을 할 때 이것을 고려해야 한다.
돌기, 웅크리기, 점프 등 필요한 애니메이션을 다운 받는다.
- 회전과 위치를 직접 제어할 것이라면, 애니메이션 자체에서 회전과 이동을 하는 애니메이션보다는 모션만 취하는 애니메이션을 다운 받는 것이 좋다.
- 점프는 점프 시작, 점프 중, 착지를 따로 받는 게 좋다.
애니메이션을 다운로드할 때 아까 다운 받으며 선택했던 캐릭터의 Skin을 포함하도록 한다.
- 캐릭터에 맞게 자동으로 리깅된다.
애니메이션을 프로젝트에 임포트한다.
- 아까 임포트했던 캐릭터의 Skeleon을 지정한다.
- 메쉬는 가져오지 않는다.
Take_001 접미사가 붙은 애니메이션들은 그냥 T-포즈를 하고 있는 애니메이션이므로 삭제해준다.
임포트한 애니메이션을 보면 지정했던 Mixamo 캐릭터를 사용하고 있는 것을 확인할 수 있다.
이 애니메이션들을 Mixamo 캐릭터의 Skeleton에서 애니메이션 스타터 팩에 있는 UE4_Mannequin_Skeleton에 맞게 리타겟 해보겠다.
언리얼 엔진 5 버전에서는 더 나은 방법으로 애니메이션 리타겟을 할 수 있으니 참고하면 된다.
UE4_Mannequin_Skeleton을 열어 Rig를 Humanoid로 변경해준다.
- 캐릭터의 모든 Bone이 자동으로 Rig에 매핑된 것을 확인할 수 있다.
- Rig는 Skeleton의 Bone들을 리스트로 저장하는 에셋이다.
Save 버튼을 눌러 저장하는 것을 잊지 말도록 한다.
Mixamo 캐릭터의 Skeleton은 Rig를 Humanoid로 변경해도, Bone들이 자동으로 Rig에 매핑되지 않는 것을 확인할 수 있다.
- Skeleton Tree의 구조와 Bone의 이름들이 조금씩 다르기 때문이다.
- 명명 규칙(Naming Convention)이 동일한 몇몇 Bone은 자동으로 매핑되어 있을 수도 있다.
번거롭지만 Rig를 직접 매핑해주어야 한다.
다음 사진과 동일하게 Bone을 Rig에 매핑해준다.
기본 매핑이 끝난 후 Show Advanced 버튼을 누르면, 손가락 등 고급 Rig를 매핑할 수 있다.
다 매핑한 후에는 꼭 Save 버튼을 눌러 저장하도록 한다.
이제 두 Skeleton의 포즈를 동일하게 맞춰주어야 한다.
- Mixamo Skeleton을 A-포즈로 만들어줘도 되고, UE4_Mannequin_Skeleton을 T-포즈로 만들어줘도 된다.
UE4_Mannequin_Skeleton을 T-포즈로 만들어주도록 한다.
- 세밀한 조정을 위해 Rotation Grid Snap 값을 변경해준다.
- 포즈 조정이 끝난 후에는 Retarget Manager에서 Modify Pose - Use CurrentPose를 클릭해준다.
- Save 버튼을 눌러 저장한다.
Preview Mesh가 Skeleton을 사용 중인 캐릭터인지 확인한다.
- 이것이 맞게 설정되어 있어야 Retarget이 성공적으로 수행된다.
Mixamo Skeleton을 열어 확인해본다.
Skeleton의 수정된 사항이 캐릭터(메쉬에)에 적용되지 않았으니, Apply To Asset 버튼을 눌러 적용해준다.
이제 두 Skeleton이 동일한 Rig 정보를 갖고 같은 포즈를 취하고 있으니 애니메이션 리타겟을 진행할 수 있다.
모든 애니메이션을 바로 하지 말고 하나만 일단 리타겟 해보도록 한다.
Mixamo Skeleton을 사용하는 애니메이션을 UE4_Mannequin_Skeleton에 맞게 리타겟할 것이다.
- 리타겟된 애니메이션은 Content 폴더에 새로 생성된다.
이상 없이 리타겟에 성공했다.
만약 Bone이 잘못 배치되어 꼬여서 보이는 문제가 발생하면, Skeleton Tree에서 Show Retargeting Options를 클릭한 후 다음을 수행해준다.
Root Bone을 우클릭하고 Recursively Set Translation Retargeting Skeleton을 클릭한다.
Translation Retargeting을 다음과 같이 설정한다.
- Pelvis - Animation Scaled
- Root - Animation
하나가 잘 된 것을 확인했으니, 그 애니메이션만 빼고 나머지도 리타켓해준다.
필요한 모든 Mixamo 애니메이션을 UE4_Mannequin_Skeleton에 맞게 리타겟했다.
'Unreal Engine > UE5 C++ Multiplayer Shooter' 카테고리의 다른 글
캐릭터 카메라와 이동 (0) | 2023.03.30 |
---|---|
애니메이션 리타겟 (0) | 2023.03.30 |
에셋 추가 (0) | 2023.03.29 |
프로젝트 생성 (0) | 2023.03.29 |
멀티 플레이어 플러그인 제작: 버그 수정 및 완성 (0) | 2023.03.28 |