리깅 모드 가이드
UModeler X의 리깅 모드는 애니메이션을 위한 본 추가, 편집 및 스키닝을 수행할 수 있는 모드입니다. 이 모드에서는 버텍스에 웨이트를 할당하고 웨이트 편집을 통해 모델의 움직임을 구현할 수 있습니다.
리깅(Rigging)이란?
리깅은 3D 모델에 골격(뼈대)을 생성하고, 모델이 골격 움직임에 따라 어떻게 변형되는지 설정하는 과정입니다. 이 과정에서 웨이트(Weight)라는 가중치 개념이 사용되며, 본의 움직임을 버텍스에 얼마나 반영하여 움직이게 할지 결정합니다.
간단히 말하면, 리깅은 3D 모델에게 애니메이션을 가능하게 하는 뼈대를 만들고, 뼈대가 움직일 때 버텍스가 웨이트 값을 기반으로 함께 움직이도록 연결시키는 과정이라고 할 수 있습니다.
웨이트(Weight)
리깅 모드에서 웨이트(Weight)는 가중치를 의미하며, 본의 움직임을 버텍스에 얼마나 반영할지 결정하는 가중치 값입니다.
- 왼쪽부터 웨이트 값이 0.0, 0.5, 1.0
값의 범위는 0.0 ~ 1.0으로, 0.0일 경우 본의 움직임이 해당 버텍스에 전혀 영향을 주지 않으며, 1.0일 경우 본의 움직임이 해당 버텍스에 완전히 영향을 줍니다. 이를 통해 3D 모델의 움직임을 조절할 수 있습니다.
왜 리깅이 필요한가?
리깅 없이는 3D 모델은 움직이지 않는 상태로만 존재하게 됩니다. 즉, 움직이지 않는 조각상 같은 상태가 됩니다.
리깅을 통해 캐릭터나 움직여야 하는 오브젝트를 유연하게 움직일 수 있게 하여 애니메이션을 만들 수 있게 됩니다.
스태틱 메시와 스킨드 메시
유니티에서 3D 모델을 제작하여 사용할 때, 두 가지 유형의 메시를 사용합니다.
스태틱 메시(Static Mesh): 스태틱 메시는 변형되지 않는 오브젝트로, 애니메이션을 적용하지 않는 메시입니다. 주로 배경, 건물, 가구 등 움직이지 않는 객체에 사용됩니다.
- 물론 '보편적'으로 스태틱 메시를 사용하는 것이고, 가구와 건물이라도 오브젝트내에서 변형이 필요하다면 스킨드 메시로 제작합니다.
스킨드 메시(Skinned Mesh): 스킨드 메시는 리깅 과정을 거쳐 애니메이션을 적용할 수 있는 3D 모델입니다. 캐릭터나 동물 등 움직이는 객체에 사용됩니다. 스킨드 메시는 본과 웨이트 값을 사용하여 버텍스가 움직이도록 연결되어 있어, 애니메이션을 표현할 수 있습니다.
유니티에서 스태틱 메시와 스킨드 메시를 확인하는 방법
- 3D 모델을 선택합니다.
- 선택하면, 인스펙터 창에 모델의 정보가 표시됩니다.
- Mesh Filter 컴포넌트와 Mesh Renderer 컴포넌트가 있는 경우:
- 스태틱 메시입니다.
- 이 두 컴포넌트는 메시의 정보와 렌더링에 관한 설정을 담당합니다.
- Skinned Mesh Renderer 컴포넌트가 있는 경우:
- 스킨드 메시입니다.
- 이 컴포넌트는 애니메이션을 지원하며, 본과 웨이트 값에 따라 메시를 변형시키는 기능을 가지고 있습니다.
- Mesh Filter 컴포넌트와 Mesh Renderer 컴포넌트가 있는 경우:
이러한 방법으로 유니티에서 스태틱 메시와 스킨드 메시를 구분하고 확인할 수 있습니다.
리깅을 진행하는 순서
- 모델링과 UV 언랩이 끝난 UModeler X 오브젝트를 준비합니다.
- 리깅 모드에 진입합니다.
- 본을 생성합니다.
- 웨이트 관련 툴을 이용해 스키닝을 진행합니다.
- 본을 움직이거나 애니메이션을 적용하여 결과를 확인합니다.
아래는 각 순서에 대한 설명입니다.
1. 모델링과 UV 언랩이 끝난 UModeler X 오브젝트 준비
모델링과 UV 언랩은 리깅 작업에 앞서 필수적으로 완료해야 하는 단계입니다. 모델링은 3D 모델의 형태를 만드는 과정이며, UV 언랩은 3D 모델의 표면에 텍스처를 올바르게 매핑하기 위한 과정입니다. 이 두 과정이 완료된 모델만이 리깅 작업을 진행할 수 있습니다.
- 아래 문서를 참고하여 모델링 모드와 UV 에디터에 대해 확인해보세요.
📄️ 모델링 모드
📄️ UV 에디터
2. 리깅 모드 진입
모델링과 UV 언랩이 완료되었다면 리깅 모드에 진입합니다. 리깅 모드는 본 생성, 웨이트 편집 등 리깅에 필요한 다양한 툴을 제공합니다.
첫 단계는 Root Bone 설정 으로, 모델의 가장 상위 뼈대(루트 구조)를 지정해야 합니다.
꽃몬스터 모델을 통해 리깅 모드 진입하기
- 꽃 모델의 경우 피벗(Pivot)이 모델 하단 중앙에 위치하는지 확인합니다.
- Position이 (0, 0, 0)에 맞춰져 있는지 확인합니다. 이후 Start Rigging버튼을 누릅니다.
3. 본 생성
본은 3D 모델의 움직임을 제어하는 뼈대 역할을 합니다. 본을 생성하는 과정에서는 본의 위치와 본 간의 연결 구조를 설정해야 합니다.
UModeler X는 이러한 과정을 쉽게 진행하게 도와주는 Build Bones 툴을 제공합니다. 이 툴을 사용하면 원하는 형태의 본의 연결 구조를 빠르게 구성할 수 있습니다.
📄️ Build Bones 툴
또한, 이미 생성된 본을 수정하거나 추가하는 등의 편집을 할 수 있는 Edit Bones 툴도 제공합니다.
📄️ Edit Bones 툴
Edit Bones을 활용한 본 생성 과정 확인하기
- Bone - Edit Bones 을 선택합니다.
- Add를 눌러 새로운 Bone을 생성하고 기즈모를 y축으로 올립니다.
Add Bone을 반복적으로 생성하여 다음과 같은 구조의 본을 생성합니다.
Shift로 만든 본을 선택하고 이름을 바꾸는 것도 가능합니다.
BoneName에서 생성한 본의 이름을 변경하고 Rename 버튼을 누르면 Bone의 이름이 변경됩니다.
- Sene View 내에 상단에 있는 Umodeler UI 설정에서 손 쉽게 Rigging Bone Cloer Vertex size를 변경할 수 있습니다.
4. 스키닝 진행
스키닝은 본과 버텍스를 연결하는 과정입니다. 이 과정에서는 각 버텍스에 웨이트를 할당하여, 본의 움직임이 해당 버텍스에 얼마나 영향을 미칠지 결정합니다.
- 웨이트 편집 툴을 이용하면 이 과정을 수행할 수 있습니다. 웨이트를 편집할 수 있는 툴은 아래와 같습니다.
📄️ Weight 툴
📄️ Weight Brush 툴
- 웨이트를 자동으로 할당하거나 빠르고 편하게 할당할 수 있는 툴은 아래와 같습니다.
📄️ Weight Transfer 툴
📄️ Auto Weight 툴
📄️ Envelope 툴
Edit Bones-Add로 만든 Bone의 스키닝 과정 확인하기
Auto Weight 적용
Add Bone 기능으로 대략적인 본 위치를 잡은 뒤, Auto Weight > Apply Auto Weight 를 실행합니다.
또는 Weight 모드나 Weight Brush 모드에서 Shift 키 로 본을 직접 잡고 수동으로 수정할 수도 있습니다.
웨이트 확인 및 수정
Auto Weight 적용 후, 본을 잡고 여러 방향으로 회전시켜 결과를 확인합니다.
줄기의 시작 부분에 해당하는 본을 회전했을 때, 고정되어야 할 화분이 함께 움직이는 문제가 발생할 수 있습니다.
이 경우 화분을 선택 후, 웨이트 값을 0과 1의 사이로 직접 입력하여 Apply Weight를 실행해 보면서, 화분이 고정될 수 있도록 합니다.
세부 조정
Shift로 Flower의 머리에 해당하는 본을 선택한 뒤 회전해 보면, Auto Weight 적용 시 잘못 잡힌 영역이 드러납니다.
머리를 회전했을 때 영향을 받지 말아야 할 초록색 잎 부분이 함께 움직이고, 반대로 머리 주변의 꽃잎은 머리와 함께 따라와야 하는데 그렇지 않은 잘못된 Weight 값이 생성된 예시입니다.
영향을 받지 말아야 할 잎부분을 더블 클릭 해 아이솔레이트 선택 모드로 전체 선택 후 0의 값을 Apply합니다.
영향을 받아야 할 잎 부분을 더블 클릭 해 아이솔레이트 선택 모드로 전체 선택 후 1의 값을 Apply합니다.
마무리 검증
기즈모로 각도를 본을 회전시켜 봤을 때 메시가 찌그러지지 않는지 확인합니다.
필요하다면 Weight Brush 모드에서 주변 값을 부드럽게 풀어주어 자연스러운 스킨 변형을 유도합니다.
5. 결과 확인
리깅 작업의 마지막 단계는 본을 움직이거나 애니메이션을 적용하여 결과를 확인하는 것입니다. 이 단계에서는 리깅 작업이 올바르게 수행되었는지, 원하는 움직임이 잘 구현되었는지를 확인할 수 있습니다.
만약 원하는 결과가 나오지 않았다면, 본의 구조나 웨이트를 수정하여 원하는 결과를 얻을 수 있습니다.