zepeto studio

가이드

아이템 만들기 - 3D 모델러 (3)
  • 시작하기
  • 아이템 만들기 - 템플릿 에디터
  • 아이템 만들기 - 3D 모델러 (1)
  • 아이템 만들기 - 3D 모델러 (2)
  • 아이템 만들기 - 3D 모델러 (3)
  • 아이템 만들기 - 3D 모델러 (4)
  • 아이템 만들기 - 튜토리얼
  • 아이템 썸네일 가이드
  • 심사 제출하기
  • 심사 가이드라인
  • 아이템 관리하기
  • 수익금 출금하기
  • 브랜드 및 제품 홍보용 아이템

아이템 만들기 - 3D 모델러 (3)

3D 모델러를 위한 아이템 제작 가이드 - 리깅 및 3D 마스킹

아이템 만들기 - 3D 모델러 (2)

 

제페토의 아이템 제작 플랫폼인 제페토 스튜디오에 오신 크리에이터 여러분을 환영합니다.

첫 번째 아이템 만들기를 시작하기 위해 본 가이드에서 다뤄볼 주제들은 아래와 같습니다.

  • 카테고리 선택
  • 디자인 컨셉 정하기
  • 3D 모델링
  • UV 매핑 및 텍스처
  • 리깅 (Rigging)
  • 3D 마스킹
  • Unity로 컨버팅하기
  • 확장자가 zepeto인 파일로 내보내기

 

 

리깅(Rigging)

 

UV 작업이 마무리되면 리깅 작업을 진행합니다.

 

[필수] 리깅 작업시 공통 유의사항

  1. Skin의 최대 influences는 4개로 고정합니다(Unity에서 웨이트 최적값이 4개입니다.).
  2. 모든 옷은 하나의 몸을 공유하기 때문에 baseBody 웨이트 수치를 기본으로 합니다.
  3. 한 벌 의상(DR)의 경우에만 웨이트를 자유롭게 칠하며, 상의(TOP), 아우터(OTR), 하의(BTM)와 같이 의상이 조합되는 경우 합쳐졌을 경우를 생각하여 웨이트 작업을 합니다.
  4. bindskin시 hips 조인트는 반드시 포함시켜 작업합니다.
  5. 피부가 연결되는 부분은 마스크 웨이트 값과 동일하게 고정시켜줍니다.
  6. creatorBaseSet이 옷을 뚫고 나오지 않도록 웨이트 작업을 합니다. (마스크로 숨기지 못하는 부분)
  7. 마스크에 Vertex color가 칠해져있어야 정상적으로 작동합니다.
  8. 조인트나 마스크에 key가 들어갔는지 확인하고 만약 있다면 지우고 저장합니다.
  9. FBX 파일로 저장할 때 옷(cloth), 조인트(hips), 마스크(mask)를 선택한 상태로 저장해야 합니다.
  10. 움직였을 때 몸의 형태가 너무 무너지지 않도록 웨이트 작업을 합니다.

 

 

카테고리별 리깅 작업

 

상의(TOP) / 하의 및 치마(BTM) / 아우터(OTR) 리깅 따라하기

 

1.creatorBaseSet_zepeto.fbx 파일을 불러옵니다.

 

2. mask에 맞춰서 옷을 제작하거나 만들어진 옷을 가져와서 맞춰줍니다.

 

3. 옷이 T포즈이면 처음 가져온 조인트로 진행하고 A포즈이면  shoulder_L, shoulder_R의 rotateZ값은 -7.5로

    upperArm_L, upperArm_R의  rotateZ값은 -40로 변경해줍니다.

 

4. 옷에 맞춰서 3D 마스킹작업을 해줍니다.(mask)

 

5. 마스크를 선택한 후 Paint Vertex Tool을 이용하여 옷에 가려지는 부분은 검은색(0)으로, 보여지는 부분은 흰색(1)으로 칠해줍니다.

 

6. 필요한 조인트를 선택 후 bindSkin 해줍니다(hips는 무조건 bindSkin에 포함시켜야 합니다.).

tip1. scale조인트가 아닌 조인트가 bindSkine되는 경우는 head, jBone, hand, foot,  lowerArm(Leg)Twist, thumbPro, hips만 해당됩니다.

tip2. 편하게 작업할려면 bindSkin 옵션에서 bind to : Selected joints로 바꿔주면 선택한 조인트만 bindSkin이 됩니다.

tip3. 종아리와 팔목은 부드럽게 디폼되게 하기 위해 lowerArm(Leg)Twist, lowerArm(Leg)Twist_scale은

        bindSkin시 필요하면 같이 포함시킵니다.

 

7. hips 조인트에는 웨이트값 0이 되어야합니다.

 

8. 만약 몸의 형태 때문에 baseBody가 옷에 추가되어있는 경우 body 끝 부분 웨이트 값을 마스크 웨이트 값과 동일하게 넣어야 합니다.

 

9. 마스크에 있는 웨이트 값을 이용하여 옷에 웨이트 값을 복사합니다

    (겹쳐있는 조인트들은 복사할 때 위치값을 조금 이동시킨 다음 진행하고 처음 위치로 돌려줍니다.).

    [pelvis, lowerArmTwist_L_scale, lowerArmTwist_R_scale, lowerLegTwist_L_scale, lowerLegTwist_R_scale]

 

10. 조인트를 하나씩 움직여보며 형태가 무너지거나 웨이트가 이상한 부분을 수정해줍니다.

    (scale조인트들의 scale값을 변화를 줘서 디폼시 문제없는지 확인합니다.)

 

11. 마무리단계에서 조인트는 T포즈가 될수있도록 rotate값을 전부 0으로 만들어줍니다.

 

12. 웨이트 작업이 끝나면 마스크를 unBindSkin 해줍니다.

 

13. 작업 완료 후 옷 오브젝트, 조인트(hips), 마스크(mask)를 선택 후 Export Selection을 이용해서 FBX 파일로 저장합니다.

 

14. FBX로 저장하고 Unity에서 애니메이션 key를 넣어서 문제가 없는지 확인합니다.

 

 

 

의상 리깅 작업시 주의사항

A자로 bindSkin하더라도 FBX 파일로 만들기 전에 T자형으로 변경해 줍니다.

 

형태가 이상하게 무너지는 경우 웨이트 작업을 다시 진행합니다.

 

baseBody와 연결되는 부분이 정상적으로 움직이는지 확인해야 합니다. 또한 안 쪽에 있는 메쉬가 밖으로 나오지 않도록 주의합니다.

 

 

신발류(SH) 리깅 따라하기

creatorBaseSet_zepeto.fbx 파일을 불러옵니다.

 

마스크에 맞춰서 신발을 제작하거나 만들어진 신발을 가져와서 마스크에 맞춰줍니다.

 

발의 볼륨이 신발 볼륨 밖으로 벗어나지 않도록 모델링을 잘 맞추고 Grid 한 칸 위를 지면으로 정합니다.

 

마스크를 선택한 후 Paint Vertex Tool을 이용하여 신발에 가려지는 부분은 검은색(0)으로, 보여지는 부분은 흰색(1)으로 칠해줍니다.

 

필요한 조인트를 선택 후 bindSkin 해줍니다(hips는 무조건 bindSkin에 포함시켜야 합니다.).

tip1. scale조인트가 아닌 조인트가 bindSkine되는 경우는 head, jBone, hand, foot,  lowerArm(Leg)Twist, thumbPro, hips만 해당됩니다.

tip2. 편하게 작업할려면 bindSkin 옵션에서 bind to : Selected joints로 바꿔주면 선택한 조인트만 bindSkin이 됩니다.

tip3. 종아리부분을 부드럽게 디폼되게 하기 위해 lowerLegTwist, lowerLegTwist_scale은

        bindSkin시 필요하면 같이 포함시킵니다.

 

조인트를 하나씩 움직여보며 형태가 무너지거나 웨이트가 이상한 부분을 수정해줍니다.

 

웨이트 작업이 끝나면 마스크를 unBindSkin 해줍니다.

 

작업 완료 후 신발 오브젝트, 조인트(hips), 마스크(mask)를 선택 후 FBX 파일로 저장합니다.

 

FBX로 저장하고 Unity에서 애니메이션 key를 넣어서 문제가 없는지 확인합니다.

 

신발 리깅 작업시 주의사항

  1. 신발류(SH)의 경우 하의(BTM)에서 발가락과 발목 조인트가 추가된 형태입니다.
  2. lowerLegTwist와 lowerLegTwist_scale이 같은 위치에 있기 때문에 웨이트를 복사를 할 때는 미묘하게 scale 조인트를 이동하여 이상하게 복사되는 경우를 방지합니다.
  3. 불필요한 조인트는 지워주며 hips 조인트는 skin에 추가되어야 합니다.

 

 

헤드웨어(HEADWEAR) 리깅 따라하기

제페토 크리에이터스에서 헤드웨어를 제작하기 위해서는 헤드웨어 전용 mask(일반 마스크와 위치가 다릅니다.) 가 필요합니다.

홈페이지에 헤드웨어 가이드 마스크를 다운받으시면, 위와같이 mask, head 조인트, dummyFace(헤드웨어의 카피웨이트), dummyHair(헤드웨어 위치 가이드)가 있습니다.

 

먼저 mask와 dummyHair위에 위치를 맞춰서 헤드웨어를 만들어줍니다.

(dummyHair는 대략적인 헤어의 볼륨을 참고하기 위한 것으로 유니티에서 실제 다양한 헤어에 매치해보면서 모델링 수정을 권합니다.)

 

헤드웨어의 제작이 끝났으면, 1번(head조인트)과 2번(헤드웨어 모델링)을 순서대로 선택 후 Bind Skin(maya 기준)을 해줍니다.

 

Bind Skin을 했으면, 이번에는 dummyFace(1번)와 헤드웨어모델링(2번)을 순서대로 선택 후 Copy Skin Weights(maya기준)을 해줍니다.

(기존에 웨이트 작업이 되어있는 dummyFace를 헤드웨어모델링에 Copy Skin Weights를 하면, 얼굴 디폼에 대응 할 수 있습니다.)

나머지 디테일한 웨이트작업을 마무리 해 줍니다.

 

mask, head 조인트, 헤드웨어 모델링을 선택하고 Export Selection 해줍니다.

 

유니티에서 다양한 캐릭터를 해쉬코드로 불러와서 여러 커스텀과 헤어에 헤드웨어가 잘 어울리는지 확인해보고 작업을 마무리 합니다.

 

 

 

기존 옷 커스터마이징가능한 옷으로 변경하기

 

1.creatorBaseSet_zepeto.fbx 파일을 불러옵니다.

 

2. 기존에 만들었던 옷 fbx을 import해서 가져옵니다. (옵션에서 use namespaces 체크, merge into selected namespace 선택해줍니다.)

 

3. 필요한 scale조인트를 선택하여 skin>Edit Influences>Add Influences로 추가해줍니다. (옵션에서 Weight locking 체크! 안하면 웨이트값이 망가집니다.)

 

4. paint Skin Weights Tool을 이용하여 모든 웨이트값을 [jointName] >>> [jointName]_scale로 이동시켜줍니다. (head, foot, hand는 해당사항 없음)

tip1. 작업시 옮겨질 조인트를 제외하고 hold시켜서 불필요한 이동이 없도록 합니다.

tip2.종아리 팔뚝 부분의 경우 웨이트를 칠하기 힘든경우 lowerArm(Leg)Twist_scale 조인트를 살짝 이동시켜서 mask웨이트를 copy해 옵니다.(해당부분만 점 선택)

 

5. lowerArm(Leg)Twist_scale와 lowerArm(Leg)Twist 수치는 부드러운 팔형태를 위해 마스크와 흡사한 웨이트가 되도록 작업합니다.

 

6. hips 조인트에는 웨이트값 0이 되어야합니다.

 

7. 조인트를 하나씩 움직여보며 형태가 무너지거나 웨이트가 이상한 부분을 수정해줍니다.

    (scale조인트들의 scale값을 변화를 줘서 디폼시 문제없는지 확인합니다.)

 

8. 마무리단계에서 조인트는 T포즈가 될수있도록 rotate값을 전부 0으로 만들어줍니다.

 

9. hips조인트를 뺀 불필요한 조인트는 skin>Edit Influences>Remove Influences로 지워줍니다.

9. 웨이트 작업이 끝나면 마스크를 unBindSkin 해줍니다.

 

10. 작업 완료 후 옷 오브젝트, 조인트(hips), 마스크(mask)를 선택 후 Export Selection을 이용해서 FBX 파일로 저장합니다.

 

11. FBX로 저장하고 Unity에서 애니메이션 key를 넣어서 문제가 없는지 확인합니다.

           

 

3D 마스킹

 

제페토의 의상 아이템 구조는 캐릭터 기본 몸체(BaseBody)에 의상을 얹는 방식이기 때문에 필연적으로 의상 오브젝트와 BaseBody 간의 중첩되는 메쉬로 인해 폴리곤 수 및 전체 파일 용량이 증가하게 됩니다.

3D 마스크로 표시한 블랙 컬러 영역은 prefab 파일로 컨버팅시 Unity에서 읽어들이지 않는 부분이기 때문에, 3D마스크 작업을 통해 불필요한 메쉬들을 제거하고 폴리곤 수 및 파일 용량 크기를 줄일 수 있습니다.

 

3D 마스킹 작업은 아래의 과정으로 진행됩니다.

제페토에서 제공하는 마스크 오브젝트를 import합니다.

 

의상 제작시엔 A포즈로 진행하지만 마스크 오브젝트는 T포즈로 제공되기 때문에 제작될 의상의 모양을 예상하고 마스크 작업을 해야합니다.

 

아래 이미지와 같은 순서로 Paint Vertex Tool을 실행합니다.

 

Color Value를 0,0,0 값으로 설정하고 의상 안쪽 중첩되는 부분의 BaseBody에 Painting 을 합니다.

 

블랙 컬러로 마스킹한 부분이 의상 밖으로 나오면 안됩니다. 의상 밖으로 나오는 BaseBody는 화이트 컬러로 표시되어야 합니다.

 

3D 마스킹 작업까지 마무리 되면 Outliner에 3D 마스크, 의상, 조인트 항목을 선택하고 FBX 파일로 내보내기를 합니다.

 

 

아이템 만들기 - 3D 모델러 (2)

아이템 만들기 - 3D 모델러 (4)