본문 바로가기
vfxai 잡학지식 vfxai 잡학지식

믹사모·UE5 마네킹·유니티 휴머노이드 본 이름 대응표

vfx 잡학지식 읽는 시간 약 20분 조회 1

믹사모 캐릭터나 애니메이션을 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의 의미상 슬롯입니다.

구간MixamoUE5 Manny/QuinnUnity Humanoid 슬롯해석
골반mixamorig:HipspelvisHipsMixamo 샘플은 별도 root 없이 Hips가 최상위입니다.
척추 첫째mixamorig:Spinespine_01Spine이름·순서 후보. 구조가 같다는 뜻은 아닙니다.
척추 둘째mixamorig:Spine1spine_02ChestUnity는 의미상 슬롯 이름을 사용합니다.
척추 셋째mixamorig:Spine2spine_03UpperChestManny의 spine_04, spine_05에는 Mixamo 상대 본이 없습니다.
목mixamorig:Neckneck_01NeckManny에는 neck_02가 추가로 있습니다.
팔mixamorig:LeftArmupperarm_lLeftUpperArm좌우 표기와 단어가 다릅니다.
팔 아래mixamorig:LeftForeArmlowerarm_lLeftLowerArm팔꿈치 아래 구간.
다리 위mixamorig:LeftUpLegthigh_lLeftUpperLeg상단 다리 구간.
발가락 시작mixamorig:LeftToeBaseball_lLeftToesUnity Toes는 슬롯명, UE ball은 Manny 본명.
손가락mixamorig:LeftHandIndex1 → 4index_metacarpal_l → index_01_l → index_02_l → index_03_lLeftIndexProximal → 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 경로를 함께 바꿉니다.

부위MixamoUE5 Manny/QuinnUnity Humanoid 슬롯메모
머리mixamorig:HeadheadHead기본 head 본.
머리mixamorig:HeadTop_End——Manny/Unity Humanoid의 같은 이름 슬롯 없음. 보존.
몸통mixamorig:HipspelvisHips테스트한 Mixamo FBX에는 별도 root가 없고 Hips가 최상위입니다.
팔mixamorig:LeftArmupperarm_lLeftUpperArmUE 접미사 _l/_r은 좌우.
다리mixamorig:LeftFootfoot_lLeftFoot발목/발 본.
팔mixamorig:LeftForeArmlowerarm_lLeftLowerArm팔꿈치 아래 구간.
팔mixamorig:LeftHandhand_lLeftHand손목/손 본.
손가락mixamorig:LeftHandIndex1index_metacarpal_lLeftIndexProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandIndex2index_01_lLeftIndexIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandIndex3index_02_lLeftIndexDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandIndex4index_03_l—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandMiddle1middle_metacarpal_lLeftMiddleProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandMiddle2middle_01_lLeftMiddleIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandMiddle3middle_02_lLeftMiddleDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandMiddle4middle_03_l—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandPinky1pinky_metacarpal_lLeftLittleProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandPinky2pinky_01_lLeftLittleIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandPinky3pinky_02_lLeftLittleDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandPinky4pinky_03_l—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandRing1ring_metacarpal_lLeftRingProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandRing2ring_01_lLeftRingIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandRing3ring_02_lLeftRingDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandRing4ring_03_l—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandThumb1thumb_01_lLeftThumbProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandThumb2thumb_02_lLeftThumbIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandThumb3thumb_03_lLeftThumbDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:LeftHandThumb4——Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
다리mixamorig:LeftLegcalf_lLeftLowerLeg무릎 아래 구간.
팔mixamorig:LeftShoulderclavicle_lLeftShoulder어깨/쇄골 체인. 이름 기준 후보.
다리mixamorig:LeftToeBaseball_lLeftToes발가락 시작 본. Unity 슬롯 이름은 Toes.
다리mixamorig:LeftToe_End——UE Manny Simple/Unity Humanoid의 별도 대응 슬롯 없음.
다리mixamorig:LeftUpLegthigh_lLeftUpperLeg상단 다리 구간.
머리mixamorig:Neckneck_01NeckMixamo Neck 1개와 Manny neck 2개는 1:1이 아닙니다.
팔mixamorig:RightArmupperarm_rRightUpperArmUE 접미사 _l/_r은 좌우.
다리mixamorig:RightFootfoot_rRightFoot발목/발 본.
팔mixamorig:RightForeArmlowerarm_rRightLowerArm팔꿈치 아래 구간.
팔mixamorig:RightHandhand_rRightHand손목/손 본.
손가락mixamorig:RightHandIndex1index_metacarpal_rRightIndexProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandIndex2index_01_rRightIndexIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandIndex3index_02_rRightIndexDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandIndex4index_03_r—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandMiddle1middle_metacarpal_rRightMiddleProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandMiddle2middle_01_rRightMiddleIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandMiddle3middle_02_rRightMiddleDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandMiddle4middle_03_r—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandPinky1pinky_metacarpal_rRightLittleProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandPinky2pinky_01_rRightLittleIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandPinky3pinky_02_rRightLittleDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandPinky4pinky_03_r—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandRing1ring_metacarpal_rRightRingProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandRing2ring_01_rRightRingIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandRing3ring_02_rRightRingDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandRing4ring_03_r—Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandThumb1thumb_01_rRightThumbProximal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandThumb2thumb_02_rRightThumbIntermediate숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandThumb3thumb_03_rRightThumbDistal숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
손가락mixamorig:RightHandThumb4——Unity 슬롯은 3개뿐입니다. 숫자 순서에 따른 후보. 관절 위치가 동일하다는 뜻은 아닙니다.
다리mixamorig:RightLegcalf_rRightLowerLeg무릎 아래 구간.
팔mixamorig:RightShoulderclavicle_rRightShoulder어깨/쇄골 체인. 이름 기준 후보.
다리mixamorig:RightToeBaseball_rRightToes발가락 시작 본. Unity 슬롯 이름은 Toes.
다리mixamorig:RightToe_End——UE Manny Simple/Unity Humanoid의 별도 대응 슬롯 없음.
다리mixamorig:RightUpLegthigh_rRightUpperLeg상단 다리 구간.
몸통mixamorig:Spinespine_01Spine체인 순번 후보. Manny 5개 spine 중 1:1 구조가 아닙니다.
몸통mixamorig:Spine1spine_02Chest체인 순번 후보. 숫자는 Unity Humanoid 슬롯이 아닙니다.
몸통mixamorig:Spine2spine_03UpperChest체인 순번 후보. 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

첫 댓글을 남겨보세요.