마켓 플레이스에서 받은 에셋을 UE5 마네킹에 적용하는 과정이 조금 걸려서 정리해두려고 합니다.
* 주의)
- 기능에 대한 정확한 이해 없이 언리얼에 만들어져 있는 것을 그대로 따라 적용한 것입니다.
- UE4 스켈레톤 구조가 아닌 경우, 아래의 방법을 그대로 따라하는 것이 아닌 적절한 Bone들을 매핑하셔야 합니다.
1. IK Rig 생성하기
- 리타겟팅 Soruce가 될 스켈레탈 메시에 대한 IK Rig를 생성합니다.
2. UE4 IK Rig 따라하기
- UE5 프로젝트를 생성하면 Contents/Characters/Mannequin_UE4/Rigs 폴더에 IK_UE4_Mannequin 이름의 IK Rig 에셋이 있습니다. 이 에셋을 켜서 설정되어 있는 것을 모두 따라합니다.
IK Rig 에셋에서 따라해야 하는 항목은 크게 Hierarchy, Chain 2가지 입니다.
1. Hierarchy
: UE4 IK Rig 에셋의 Bone 구조를 보면 IK Goal 과 Bone 아래에 Setting 들이 있습니다.
먼저 pelvis 본에 마우스 우클릭으로 메뉴를 띄운 후 'Set Retarget Root' 를 눌러 Retarget Root로 설정합니다.
그리고 알맞은 Bone 아래에 New IK Goal 를 눌러 추가합니다. 선택 창이 뜨면 UE4 IK Rig 에셋에 있는대로 Full Body IK를 눌러주면 됩니다.
생성된 IK를 눌러 Details에 있는 값들을 그대로 적용해줍니다.
그 다음에 Bone을 누른 후 Add Settings to Selected Bone 을 눌러 세팅을 추가해줍니다. 추가된 세팅도 누른 후 Details에 있는 값들을 그대로 적용해줍시다.
2. Chain
UE4 IK Rig 에셋의 IK Retargeting 창을 보시면 많은 Chain들이 생성되어 있는걸 확인할 수 있습니다.
새로 만든 IK Rig에도 그대로 똑같이 추가하면 됩니다.
Add New Chain을 눌러 만든 후 Chain Name, Start Bone, End Bone, IK Goal 을 설정합니다.
만약 UE4의 스켈레톤 구조가 아닌 경우 해당하는 Bone들을 연결해주어야 합니다!
3. UE4 Retargeter 따라하기
이제 만든 IK Retargeter를 통해 UE5에 리타겟팅 해줄 차례입니다.
먼저 Retargeter 에셋을 만듭니다. 리타겟팅의 Source가 되는 IK Rig를 선택해주어야 합니다. 만들어 두었던 IK Rig 에셋을 연결해줍니다.
Contents/Characters/Mannequin_UE4/Rigs 폴더로 가면 RTG_UE4Manny_UE5Manny 이름의 IK Retargeter 에셋이 있습니다. 이제 이 에셋을 참고해서 만들 것입니다. 새로 만든 IK Retargeter를 열어 'Target IKRig Asset' 에 원하는 IK Rig 에셋을 연결합니다. UE5 마네킹에 연결하려는 거라면, 언리얼 엔진에서 디폴트로 만든 IK_Mannequin 에셋이 이미 만들어져 있을겁니다. 연결한 후, Chain Mapping 창에 있는 옵션을 RTG_UE4Manny_UE5Manny 에셋에 있는대로 따라합니다.
디폴트로 매핑을 해주지만, 중간중간 하지 말아야할 것들이나 혹은 안되어 있는 것들이 있는지 확인합니다.
그리고 Target Chain의 항목 중에 하나를 클릭하면 ( 사진 상 Root 클릭되어있음 ) 디테일 창이 나옵니다. 그 값들을 반드시 따라해주어야 합니다. 해당 설정을 안한다면 루트 모션이 동작 안하는 경우가 있다고 합니다.
이렇게 까지 완료하신 후에 Asset Browser에 있는 애니메이션을 통해 제대로 리타겟팅이 되었는지 확인하면 됩니다.
'언리얼 개발자' 카테고리의 다른 글
[Unreal] AcknowledgedPawn (0) | 2023.01.19 |
---|---|
[Unreal] Include Path 추가하기 (0) | 2022.12.29 |
[Unreal] Smooth Path Following using Spline (0) | 2022.12.24 |
[Unreal] Smooth Dynamic Spline using PathFinding Points (3) | 2022.12.24 |
[Unreal] 비동기[Async] PathFinding (0) | 2022.12.22 |