믹사모·UE5 마네킹·유니티 휴머노이드 본 이름 대응표
믹사모 캐릭터나 애니메이션을 UE5 Manny 또는 Unity Humanoid로 옮길 때, 본 이름만 맞추면 바로 재생될까? FBX에는 mixamorig:가 붙고, UE는 pelvis, Unity는 Hips를 쓰니 어디까지 바꿔야 하는지 헷갈리기 쉽습니다.
먼저 실제 이름을 나란히 놓고 보세요. 아래 대응표와 Blender Python 생성기는 이름을 찾아 바꾸는 데 쓰고, 척추처럼 본 수가 다른 곳은 1:1이 아니라고 따로 표시합니다.
1. 본 이름 대응표는 호환성표와 다르다
FBX에서 본 이름은 연결된 관절을 찾는 표식입니다. 이름을 바꾸면 표식은 달라지지만, 뼈의 위치나 부모 관계, 포즈는 그대로입니다.
이 글은 실제 Mixamo 애니메이션 FBX 한 개와 UE5.4.4 MoverExamples의 SKM_Manny_Simple을 직접 열어 이름을 비교했습니다. Unity 쪽은 Unity 6 HumanBodyBones enum과 Avatar Mapping 문서를 기준으로 슬롯을 적었습니다.
Mixamo 시험 파일은 65본이었습니다. Hips가 맨 위에 있고 별도 root는 없었습니다. Manny 시험 파일은 89본이며 root와 pelvis가 따로 있었습니다. 그러므로 Mixamo Hips를 Manny root에 붙이지 않고 pelvis 후보로 둡니다.
2. 믹사모 본 이름이 바로 맞지 않는 구간부터 보기
척추 이름은 가장 쉽게 틀립니다. 시험한 Mixamo 리그는 Spine, Spine1, Spine2 세 개지만 Manny는 spine_01부터 spine_05까지 다섯 개입니다.
아래의 Spine → spine_01, Spine1 → spine_02, Spine2 → spine_03은 체인 순서에 따른 이름 후보입니다. 누락된 두 본을 새로 만들지는 않습니다. Unity의 Spine, Chest, UpperChest도 실제 본 이름이 아니라 휴머노이드 Avatar의 의미상 슬롯입니다.
| 구간 | Mixamo | UE5 Manny/Quinn | Unity Humanoid 슬롯 | 해석 |
|---|---|---|---|---|
| 골반 | mixamorig:Hips | pelvis | Hips | Mixamo 샘플은 별도 root 없이 Hips가 최상위입니다. |
| 척추 첫째 | mixamorig:Spine | spine_01 | Spine | 이름·순서 후보. 구조가 같다는 뜻은 아닙니다. |
| 척추 둘째 | mixamorig:Spine1 | spine_02 | Chest | Unity는 의미상 슬롯 이름을 사용합니다. |
| 척추 셋째 | mixamorig:Spine2 | spine_03 | UpperChest | Manny의 spine_04, spine_05에는 Mixamo 상대 본이 없습니다. |
| 목 | mixamorig:Neck | neck_01 | Neck | Manny에는 neck_02가 추가로 있습니다. |
| 팔 | mixamorig:LeftArm | upperarm_l | LeftUpperArm | 좌우 표기와 단어가 다릅니다. |
| 팔 아래 | mixamorig:LeftForeArm | lowerarm_l | LeftLowerArm | 팔꿈치 아래 구간. |
| 다리 위 | mixamorig:LeftUpLeg | thigh_l | LeftUpperLeg | 상단 다리 구간. |
| 발가락 시작 | mixamorig:LeftToeBase | ball_l | LeftToes | Unity Toes는 슬롯명, UE ball은 Manny 본명. |
| 손가락 | mixamorig:LeftHandIndex1 → 4 | index_metacarpal_l → index_01_l → index_02_l → index_03_l | LeftIndexProximal → LeftIndexIntermediate → LeftIndexDistal → 없음 | 순번 비교 후보. Unity에는 네 번째 슬롯이 없습니다. |
| 없는 대응 | mixamorig:HeadTop_End, LeftToe_End | 없음 | 없음 | 억지로 다른 본에 붙이지 않고 원래 이름을 둡니다. |
표의 손가락 숫자도 그대로 같은 구조라고 단정할 수 없습니다. Mixamo 시험 파일은 손가락마다 1~4를 갖지만, Unity Humanoid 슬롯은 보통 proximal, intermediate, distal 세 단계로 나뉩니다. 검사한 Manny는 index, middle, ring, pinky에 metacarpal과 01~03 본이 있고, thumb는 01~03입니다.
Manny 쪽에는 Mixamo 표준본에서 찾을 수 없는 root, spine_04, spine_05, neck_02, twist 본과 ik_foot_*, ik_hand_* 같은 보조본이 있습니다. Mixamo HeadTop_End와 Toe_End도 같은 이름의 Manny 또는 Unity 슬롯이 없습니다.
3. 검색표와 Blender Python 생성기
검색창에 Mixamo 원래 이름이나 목표 이름을 입력하면 표의 해당 행만 남습니다. 목표를 UE5 Manny/Quinn 또는 Unity Humanoid 슬롯으로 고르고 Blender Python을 만들면, 아래 코드 영역에 실제 이름 목록이 채워집니다.
믹사모 본 대응 검색과 Blender Python 생성기
본 이름이나 목표 이름으로 표를 검색하세요. 생성된 코드는 선택한 Armature의 bone 이름과 연결된 vertex group, 가능한 경우 action 경로를 함께 바꿉니다.
| 부위 | Mixamo | UE5 Manny/Quinn | Unity Humanoid 슬롯 | 메모 |
|---|---|---|---|---|
| 머리 | mixamorig:Head | head | Head | 기본 head 본. |
| 머리 | mixamorig:HeadTop_End | — | — | Manny/Unity Humanoid의 같은 이름 슬롯 없음. 보존. |
| 몸통 | mixamorig:Hips | pelvis | Hips | 테스트한 Mixamo FBX에는 별도 root가 없고 Hips가 최상위입니다. |
| 팔 | mixamorig:LeftArm | upperarm_l | LeftUpperArm | UE 접미사 _l/_r은 좌우. |
| 다리 | mixamorig:LeftFoot | foot_l | LeftFoot | 발목/발 본. |
| 팔 | mixamorig:LeftForeArm | lowerarm_l | LeftLowerArm | 팔꿈치 아래 구간. |
| 팔 | mixamorig:LeftHand | hand_l | LeftHand | 손목/손 본. |
| 손가락 | mixamorig:LeftHandIndex1 | index_metacarpal_l | LeftIndexProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandIndex2 | index_01_l | LeftIndexIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandIndex3 | index_02_l | LeftIndexDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandIndex4 | index_03_l | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandMiddle1 | middle_metacarpal_l | LeftMiddleProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandMiddle2 | middle_01_l | LeftMiddleIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandMiddle3 | middle_02_l | LeftMiddleDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandMiddle4 | middle_03_l | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandPinky1 | pinky_metacarpal_l | LeftLittleProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandPinky2 | pinky_01_l | LeftLittleIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandPinky3 | pinky_02_l | LeftLittleDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandPinky4 | pinky_03_l | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandRing1 | ring_metacarpal_l | LeftRingProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandRing2 | ring_01_l | LeftRingIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandRing3 | ring_02_l | LeftRingDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandRing4 | ring_03_l | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandThumb1 | thumb_01_l | LeftThumbProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandThumb2 | thumb_02_l | LeftThumbIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandThumb3 | thumb_03_l | LeftThumbDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:LeftHandThumb4 | — | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 다리 | mixamorig:LeftLeg | calf_l | LeftLowerLeg | 무릎 아래 구간. |
| 팔 | mixamorig:LeftShoulder | clavicle_l | LeftShoulder | 어깨/쇄골 체인. 이름 기준 후보. |
| 다리 | mixamorig:LeftToeBase | ball_l | LeftToes | 발가락 시작 본. Unity 슬롯 이름은 Toes. |
| 다리 | mixamorig:LeftToe_End | — | — | UE Manny Simple/Unity Humanoid의 별도 대응 슬롯 없음. |
| 다리 | mixamorig:LeftUpLeg | thigh_l | LeftUpperLeg | 상단 다리 구간. |
| 머리 | mixamorig:Neck | neck_01 | Neck | Mixamo Neck 1개와 Manny neck 2개는 1:1이 아닙니다. |
| 팔 | mixamorig:RightArm | upperarm_r | RightUpperArm | UE 접미사 _l/_r은 좌우. |
| 다리 | mixamorig:RightFoot | foot_r | RightFoot | 발목/발 본. |
| 팔 | mixamorig:RightForeArm | lowerarm_r | RightLowerArm | 팔꿈치 아래 구간. |
| 팔 | mixamorig:RightHand | hand_r | RightHand | 손목/손 본. |
| 손가락 | mixamorig:RightHandIndex1 | index_metacarpal_r | RightIndexProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandIndex2 | index_01_r | RightIndexIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandIndex3 | index_02_r | RightIndexDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandIndex4 | index_03_r | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandMiddle1 | middle_metacarpal_r | RightMiddleProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandMiddle2 | middle_01_r | RightMiddleIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandMiddle3 | middle_02_r | RightMiddleDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandMiddle4 | middle_03_r | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandPinky1 | pinky_metacarpal_r | RightLittleProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandPinky2 | pinky_01_r | RightLittleIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandPinky3 | pinky_02_r | RightLittleDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandPinky4 | pinky_03_r | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandRing1 | ring_metacarpal_r | RightRingProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandRing2 | ring_01_r | RightRingIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandRing3 | ring_02_r | RightRingDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandRing4 | ring_03_r | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandThumb1 | thumb_01_r | RightThumbProximal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandThumb2 | thumb_02_r | RightThumbIntermediate | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandThumb3 | thumb_03_r | RightThumbDistal | 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 손가락 | mixamorig:RightHandThumb4 | — | — | Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다. |
| 다리 | mixamorig:RightLeg | calf_r | RightLowerLeg | 무릎 아래 구간. |
| 팔 | mixamorig:RightShoulder | clavicle_r | RightShoulder | 어깨/쇄골 체인. 이름 기준 후보. |
| 다리 | mixamorig:RightToeBase | ball_r | RightToes | 발가락 시작 본. Unity 슬롯 이름은 Toes. |
| 다리 | mixamorig:RightToe_End | — | — | UE Manny Simple/Unity Humanoid의 별도 대응 슬롯 없음. |
| 다리 | mixamorig:RightUpLeg | thigh_r | RightUpperLeg | 상단 다리 구간. |
| 몸통 | mixamorig:Spine | spine_01 | Spine | 체인 순번 후보. Manny 5개 spine 중 1:1 구조가 아닙니다. |
| 몸통 | mixamorig:Spine1 | spine_02 | Chest | 체인 순번 후보. 숫자는 Unity Humanoid 슬롯이 아닙니다. |
| 몸통 | mixamorig:Spine2 | spine_03 | UpperChest | 체인 순번 후보. Unity UpperChest는 선택 슬롯입니다. |
| UE 전용 추가·보조본 | — | root; spine_04, spine_05; neck_02; *_twist_*; ik_foot_*; ik_hand_*; interaction; center_of_mass | — | 검사한 Manny Simple에 있음. 표준 Mixamo/Unity Humanoid 슬롯과 1:1 대응 없음. |
이름 바꾸기 코드 만들기
실행 전 .blend를 다른 이름으로 저장하세요. Blender에서 대상 Armature를 활성화한 뒤 Scripting 탭의 Text Editor에서 실행하세요. 이름이 겹치는 본은 안전을 위해 건너뛰세요.
기본 접두사는 mixamorig:입니다. Blender에서 본 이름이 mixamorig1:로 시작하면 입력란을 그 접두사로 바꾸세요. 가져오기 과정에서 접두사가 이미 빠졌다면 입력란을 비워 두면 됩니다.
생성 코드는 활성화된 Armature의 대응 본 이름과 연결된 Mesh의 vertex group 이름을 같이 바꿉니다. Blender 5.0에서 실제 65본 Mixamo 캐릭터로 시험했을 때 UE 이름으로 60본이 바뀌었고, Armature의 본 수는 그대로 65였습니다. 대응이 없는 끝 본은 원래 이름으로 남았습니다.
4. 생성 코드를 실행하고 결과 확인
1) 실행 전에 .blend 파일을 다른 이름으로 저장하세요.
2) Outliner에서 바꿀 Armature를 선택해 활성 오브젝트로 만드세요.
3) 본 이름의 접두사와 목표 규칙을 확인하고 코드를 생성해 복사하세요.
4) Blender의 Scripting 작업 공간에서 Text Editor를 열고 코드를 붙여 Run Script를 누르세요.
5) Armature에서 pelvis, upperarm_l 같은 목표 이름을 찾고, Mesh vertex group에도 같은 이름이 있는지 확인하세요. 애니메이션이 있는 FBX라면 재생해 이름 변경 뒤에도 포즈가 움직이는지 확인하세요.
코드가 본 구조를 바꾸거나 새 본을 만들지는 않습니다. 이름 충돌이 있으면 해당 행을 건너뛰도록 되어 있습니다. 예상한 본이 그대로 남으면 접두사, 현재 이름, 기존 목표 이름과의 충돌을 먼저 확인하세요.
5. UE5와 Unity에서는 따로 리타게팅하기
UE5에서는 Mixamo 스켈레톤과 Manny의 IK Rig를 준비하고 각각 Retarget Root와 필요한 Retarget Chain을 정의하세요. Epic 문서는 Spine, 양팔, Neck, Head, 양다리를 주요 체인 예로 들고, 서로 계층이 다른 캐릭터도 체인으로 연결하는 절차를 설명합니다. Retargeter에서 체인을 매핑한 뒤 포즈를 맞춰 미리보기하세요.
Unity에서는 FBX의 Inspector에서 Rig 탭을 열고 Animation Type을 Humanoid로 설정한 다음 Configure를 누르세요. Avatar Mapping에서 필수 슬롯이 채워졌는지, T-pose가 맞는지 확인하고 Apply하세요. 슬롯에 같은 글자가 있는지만으로 Avatar가 유효하다고 판단하지 마세요.
결국 본 이름 대응표는 세 리그의 이름을 읽기 쉽게 옮기는 사전입니다. UE는 IK Retargeter의 체인을, Unity는 Avatar 슬롯과 포즈를 따로 맞춰야 합니다. 이름을 바꾸는 일만으로 애니메이션을 리타게팅하지는 않습니다.
이름과 별개로 FBX 크기나 회전이 어긋났다면 단위와 업 축도 확인하세요. 다음 글에서 그 문제를 따로 점검할 수 있습니다.
이름과 별개로 FBX 크기나 회전이 어긋났다면 단위와 업 축도 확인하세요. 블렌더·유니티 FBX 크기와 Scale Factor, 회전값 -90과 축 방향, 블렌더·마야 단위와 업 축 글에서 이어서 볼 수 있습니다.
자료와 공식 문서
vfx 잡학지식

댓글 0
첫 댓글을 남겨보세요.