Skip to content

3D 모델에 옷 입히기 ​

Cinevva CTO 겸 공동 창립자 Oleg Sidorkin 작성

피팅을 다듬기 전과 후의 빨간 스웨터 소매 끝을 나란히 비교한 확대 이미지.

캐릭터와 의상 에셋이 있습니다. 이 둘을 어떻게 움직일 수 있는 옷 입은 캐릭터로 만들 수 있을까요?

셔츠를 몸통 위에 배치하는 것은 첫 단계일 뿐입니다. 셔츠는 캐릭터의 체형에도 맞아야 하고, 올바른 관절을 따라 움직여야 하며, 원래 머티리얼을 유지하고, 애니메이션 중에도 몸을 뚫지 않아야 합니다. 이는 각각 별개의 문제이며, 하나를 해결한다고 해서 나머지도 자동으로 해결되지는 않습니다.

우리는 재사용 가능한 스웨터와 기존 리깅 캐릭터를 사용해 Cinevva 자동 리거를 위한 이 워크플로를 실험했습니다. 아래에서 실제 실험 단계를 직접 확인할 수 있습니다. 하나의 인간형 개구리에 스웨터를 수동으로 맞춘 프로토타입이며, 추가로 바지와 반바지 기준 모델도 포함합니다. 임의로 업로드한 의상을 자동 처리하는 기능은 아직 향후 과제입니다.

3D로 과정 살펴보기 ​

뷰어는 피팅 및 스키닝된 모델로 시작합니다. 피팅 전후 비교를 활성화하면 왼쪽에 이전 단계가 나타나며, 크기 조정과 배치만 적용된 상태부터 볼 수 있습니다. 스웨터는 캐릭터 근처에 맞춰 크기와 위치가 조정되었지만, 팔은 여전히 원래 자세를 유지하며 스켈레톤에도 연결되지 않았습니다. 오른쪽은 피팅 및 스키닝이 완료된 상태이므로 캐릭터의 애니메이션을 따라 움직입니다.

비교가 활성화된 상태에서 비교 단계를 사용하면 배치 단계에서 체형 정렬 단계로, 이어서 이전의 피팅 및 스키닝 단계로 이동할 수 있습니다. 형태를 비교하려면 기본 자세에서 시작하세요. 재생을 누르면 피팅과 연결이 왜 서로 다른 단계인지 알 수 있습니다. 어느 쪽 뷰든 드래그하면 두 카메라가 함께 회전하며, 캐릭터의 뒷모습도 살펴볼 수 있습니다.

이는 인위적으로 만든 “잘못된” 애니메이션이 아니라 실험 중 저장한 실제 단계입니다. 처음 두 단계에서는 스키닝되지 않은 의상이 제자리에 머무는 동안 몸만 움직입니다. 세 번째 단계에서는 두 의상 모두 이미 피팅 및 스키닝되어 있으므로 차이가 더 작습니다. 뒤에 나오는 확대 보기에서 그 세부 차이를 살펴봅니다.

동작 찾기를 사용해 260개 동작 유니버설 팩을 검색한 다음, 애니메이션을 선택하면 자동으로 재생됩니다. 멈추려면 일시 정지를 사용하세요. 걷기, 점프, 웅크린 대기, 앉은 대기를 시도해 보세요. 클립은 필요할 때 로드되며 리거와 동일한 리타기팅 코드를 사용합니다. 비교하는 두 모델은 클립의 타임라인과 워크벤치의 루트 모션 및 스킨 기반 접지 규칙을 공유합니다. 바닥 그리드는 고정된 상태로 유지되고, 전신 카메라는 골반의 수직 움직임을 상쇄하지 않으면서 수평 이동을 따라갑니다. 의상이나 피팅 단계를 변경해도 이 동작을 유지할 수 있습니다.

진단 포즈를 선택하면 원래의 포즈 컨트롤로 돌아가 이 글의 측정 사례를 재현할 수 있습니다. 유니버설 동작은 시각적 검사용이며, 여기에 보고된 충돌 수치가 해당 동작 중 의상이 몸과 겹치지 않는다는 사실을 입증하는 것은 아닙니다. 스키닝되지 않은 준비 단계에서는 몸이 움직여도 의상은 고정된 상태로 남습니다.

브라우저는 준비된 애니메이션 에셋을 재생하고 리타기팅합니다. 실시간으로 의상을 피팅하거나 천을 시뮬레이션하지는 않습니다.

1. 실제로 재사용할 수 있는 의상 선택하기 ​

유용한 시작점은 두 가지입니다. 특정 아바타 계열을 위해 제작된 의상을 사용하거나, 새로운 체형에 맞게 조정할 독립적인 의상 메시를 사용하는 것입니다. 첫 번째는 이미 정해진 체형과 포즈를 제공하며, 연결 방식까지 정해진 경우도 많습니다. 두 번째는 자유도가 더 높지만 피팅 파이프라인에서 더 많은 작업이 필요합니다.

이 실험에서는 MakeHuman Shirts01 컬렉션에 있는 MargaretToigo의 피셔맨 스웨터를 선택했습니다. 해당 에셋은 CC0로 표시되어 있습니다. OBJ 메시, UV 텍스처, 머티리얼 설명, MakeHuman 바디 템플릿용 대응 관계 파일이 포함되어 있습니다. 의상은 2,126개 버텍스와 4,164개 삼각형으로 구성됩니다.

다운로드한 에셋을 재사용 가능한 의상 아이템으로 취급하기 전에 실제 사용 권한과 구성 요소를 확인하세요. 미리보기 이미지만으로는 별도의 의상 메시와 사용 가능한 텍스처가 포함되어 있는지, 또는 옷 입은 모델을 배포할 권한이 있는지 알 수 없습니다.

스웨터의 템플릿 대응 관계는 유용하지만 범용적이지는 않습니다. 이는 MakeHuman의 바디 토폴로지를 기준으로 합니다. 개구리 캐릭터는 메시와 스켈레톤이 다르므로 OBJ를 가져오는 것만으로 해당 대응 관계가 자동 적용되지는 않습니다. 바디 템플릿 대응 웨이트와 스켈레탈 스킨 웨이트도 서로 다른 개념입니다.

바지와 반바지도 시험해 보기 ​

스웨터는 어깨와 팔을 시험하기 좋습니다. 바지에는 또 다른 피팅 문제가 있습니다. 허리를 감싸는 허리밴드, 서로 독립적으로 움직이는 두 바짓단, 그리고 그 사이를 연결해야 하는 가랑이 부분이 있습니다. 반바지도 엉덩이 피팅 문제를 공유하지만 무릎 전에 끝납니다.

카고 바지 또는 데님 반바지를 선택하세요. 뷰어에는 수동으로 피팅하고 스키닝한 프로토타입이 표시됩니다. 피팅 전후 비교를 활성화하면 왼쪽에 크기 조정 및 배치 단계가 추가됩니다. 왼쪽 무릎 굽힘과 양쪽 무릎 굽힘을 시험한 다음 캐릭터 뒤쪽으로 회전해 보세요. 무릎 표시는 두 뷰에서 동일한 좌우 무릎 관절을 표시하며, 의상 숨기기는 몸을 노출해 자세를 직접 비교할 수 있게 합니다. 확인한 여섯 개 포즈 모두에서 무릎 관절 위치가 정확히 일치합니다. 다르게 피팅된 바지 윤곽 때문에 무릎 사이가 더 가까워 보일 수 있습니다. 이들은 스웨터의 색상만 바꾼 것이 아니라 원래 텍스처를 유지한 서로 다른 두 개의 재사용 가능 메시입니다.

두 에셋 모두 Cortu가 제작했으며, MakeHuman 바지 팩에서 CC0로 표시되어 있습니다. 이 실험에서는 저해상도 메시를 서브디바이드하고, 엉덩이와 다리 영역을 개구리의 관절에 매핑하고, 국소적인 여유 공간 보정을 적용한 뒤, 인접한 바디 삼각형에서 웨이트를 전송했습니다. 컨트롤은 미리 제작된 하체 진단 동작을 재생합니다.

이 의상 예제들은 아직 프로토타입입니다. 스웨터, 바지, 반바지는 각각 검증 결과가 다릅니다. 아래의 피팅 교훈에서는 개선된 부분과 여전히 잘못된 부분을 설명합니다.

2. 바디와 기본 포즈 정립하기 ​

피팅 시스템은 의상이 무엇을 감싸야 하는지 알아야 합니다. 이 사례에서 로컬에 있는 리깅된 개구리는 노출된 바디 메시, 긴 팔, 큰 손, 22개 관절로 이루어진 인간형 스켈레톤을 갖고 있습니다. 덕분에 사용할 수 있는 대상 표면과 의미 있는 어깨, 팔꿈치, 손목, 엉덩이, 목 랜드마크를 확보할 수 있습니다.

이미 코트를 입고 있는 캐릭터에는 코트의 외부 표면만 존재할 수 있습니다. 그 아래에 완전한 몸통이 없을 수도 있습니다. 이런 상황에서는 기존 지오메트리 위에 겉옷을 피팅하거나, 명시적으로 근사한 바디 프록시를 사용하거나, 적절한 베이스 바디를 확보하는 것이 현실적인 선택입니다. 관절 이름만으로는 누락된 표면을 복원할 수 없습니다.

피팅하기 전에 의상과 바디를 동일한 좌표계에 배치하세요. 크기, 방향, 오브젝트 트랜스폼, 기본 포즈를 일치시켜야 합니다. 팔을 내린 상태를 기준으로 제작된 의상은 바운딩 박스 높이가 같다는 이유만으로 T 포즈에 맞지 않습니다.

애니메이션 리타기팅이 의상 피팅과 다른 이유도 여기에 있습니다. 스켈레톤 간에 동작을 전송해도 셔츠가 새로운 가슴 형태에 맞게 변형되거나 소매 길이가 조정되지는 않습니다.

3. 의상 형태를 바디에 맞게 피팅하기 ​

첫 번째 데모에서는 단순 배치와 보다 세밀한 정렬을 구분합니다. 이 프로토타입은 스켈레톤에서 대상 랜드마크를 읽고, 스웨터에 명시적으로 지정된 대응 랜드마크를 사용합니다. 몸통 변형과 팔 매핑으로 초기 피팅을 만들며, 팔 세그먼트 사이에는 연속적인 블렌딩을 적용합니다.

다음 단계에서는 변위를 스무딩하면서 제한된 표면 여유 공간 보정을 적용합니다. 목표는 의상 형태를 망가뜨리지 않으면서 몸과 겹치는 천을 바깥쪽으로 이동하는 것입니다. 이는 단순한 정적 피팅 기준선이지, 천 시뮬레이션 솔버는 아닙니다.

입력 조건에 따라 서로 다른 접근법이 필요합니다.

시작점실용적인 피팅 방식추가로 확인할 사항
동일한 바디 템플릿용으로 제작된 의상알려진 템플릿 대응 관계 또는 지원되는 체형 컨트롤 적용포즈, 비율, 에셋별 가정
별도의 의상과 서로 다른 바디랜드마크 또는 피팅 케이지를 정렬하고 의상을 변형한 뒤 겹침 해결솔기, 실루엣, 여유 공간, 국소적인 늘어남
헐렁하거나 여러 겹인 의상프록시와 충돌 인식 피팅 사용, 오프라인 천 시뮬레이션 고려레이어 순서, 자체 접촉, 부피 보존

이 표는 가능한 워크플로 선택지를 설명합니다. 이 실험에서는 두 번째 방식을 사용합니다. 스웨터와 바지에는 랜드마크 피팅을 적용하고, 반바지에는 이어서 변형 케이지를 적용합니다. 모든 방법이나 의상 유형을 검증한 것은 아닙니다.

피팅하는 동안 디자인 의도를 보존해야 합니다. 헐렁한 코트가 몸에 페인트를 칠한 것처럼 달라붙어서는 안 됩니다. 치마에는 두 다리 주변에 충분한 공간이 필요합니다. 옵티마이저에 입력하기 쉽도록 만들겠다는 이유로 UV 솔기와 분리된 레이어를 무분별하게 용접해서도 안 됩니다.

4. 피팅된 의상을 리그에 연결하기 ​

피팅이 끝난 뒤에도 의상은 또 다른 질문에 답해야 합니다. 각 버텍스를 어떤 본이 움직여야 할까요?

스웨터 전체를 캐릭터에 페어런팅하면 캐릭터와 함께 이동하지만, 소매가 팔꿈치에서 굽혀지지는 않습니다. 스켈레탈 스키닝은 각 버텍스에 여러 관절 트랜스폼을 가중 조합해 적용합니다. 몸에 밀착되는 의상의 경우, 바디의 기존 웨이트 필드를 유용한 시작점으로 사용할 수 있습니다.

스웨터의 경우 프로토타입은 신뢰할 수 있는 표면 웨이트를 전송하고, Robust Skin Weights Transfer via Weight Inpainting에 설명된 접근법에 따라 불확실한 영역을 신뢰할 수 있는 인접 영역의 값으로 채웁니다. 대응 항목은 지오메트리를 기준으로 필터링하며, 모호한 영역은 명시적인 연결 의도에 따라 처리합니다. 소매의 경우 가까이 있는 손이 반드시 올바른 웨이트 소스는 아닙니다. 장갑이라면 올바른 소스일 수 있습니다.

바지와 반바지에는 더 단순한 최근접 삼각형 기반 바리센트릭 웨이트 전송을 사용하며, 버텍스당 관절 영향은 네 개로 제한합니다. 이 방식도 가랑이와 각 바짓단 입구 주변을 세심하게 검토해야 합니다.

결과적으로 의상은 기존 애니메이션을 따라 움직입니다. 하지만 아직 독립적인 천 움직임은 없습니다. 천 시뮬레이션, 스프링 기반 보조 동작, 베이크된 천 애니메이션은 추가로 선택해야 하는 기능이며, 메시가 스킨 웨이트를 갖는다고 자동으로 생기는 속성이 아닙니다.

메인 데모를 재생하면서 크기 조정 및 배치와 피팅 및 웨이트 전송을 비교해 보세요. 이는 캐릭터 주변에 단순히 놓인 의상과 캐릭터의 포즈에 참여하는 의상의 차이입니다.

5. 옷 입은 캐릭터를 움직여 테스트하기 ​

기본 포즈에서는 잘못된 연결이나 관절이 굽혀질 때 발생하는 교차가 드러나지 않을 수 있습니다. 캐릭터를 앞, 옆, 뒤에서 확인한 다음, 의상에 부담을 주는 동작을 시험하세요. 팔 들기, 팔꿈치 굽히기, 손목 움직이기, 그리고 의상이 해당 부위까지 내려오는 경우 엉덩이와 무릎 움직임을 테스트해야 합니다.

실제 의상을 사용한 첫 번째 테스트에서는 여러 측정 방법이 필요한 이유를 확인할 수 있었습니다.

초기 피팅 단계바디를 관통하는 의상 삼각형
단순 크기 조정352
랜드마크 정렬495
표면 여유 공간 보정33

랜드마크 단계에서는 의상을 더 의도적으로 배치했지만 교차 수가 증가했습니다. 표면 보정으로 그 수가 크게 줄었지만, 여전히 충돌 없음 기준을 통과하지 못했습니다.

버텍스만 검사하는 방식은 더욱 오해를 불러일으켰습니다. 최근접 바디 표면 노멀의 음의 방향에 있는 버텍스는 0개로 보고되었지만, 삼각형 검사에서는 여전히 관통이 발견되었습니다. 삼각형의 각 꼭짓점이 인접 표면에서 떨어져 있는 것처럼 보여도 삼각형 자체가 바디를 관통할 수 있습니다.

바지와 반바지에서 얻은 교훈 ​

하체 실험에서는 충돌 점수만으로 파악할 수 없는 문제가 드러났습니다. 의상의 교차가 줄어도 외형은 여전히 잘못될 수 있습니다.

바지는 원래 형태를 잃었습니다. 여유 공간만 보정하자 엉덩이 부분이 지나치게 넓게 남았습니다. 천을 몸 쪽으로 당기자 그 벌어짐은 사라졌지만 가랑이가 아래로 끌려 내려가면서 바지가 몸에 밀착된 왜곡된 표면처럼 보였습니다. 두 모델의 무릎 관절 위치가 일치한다는 사실만으로는 의상이 올바르게 피팅되었다고 볼 수 없었습니다.

이후 허리밴드, 가랑이, 무릎, 발목 높이를 고정하고 여유 공간 보정을 수평 이동으로 제한했습니다. 이로써 밑위는 복원되었지만, 앞, 옆, 뒤를 확대해 보면 여전히 가랑이 조임, 각진 무릎, 고르지 않은 바짓단, 카고 바지 특유의 실루엣 손실이 드러났습니다. 현재 바지는 기본 자세에서 영향받는 삼각형이 53개이고, 샘플링한 여섯 개 포즈에서는 50~92개입니다. 처진 버전은 기본 자세에서 교차가 21개로 더 적었지만, 허용할 수 있는 피팅은 아니었습니다.

반바지에는 별도의 제약 조건이 필요했습니다. 이전 피팅 기준선을 적용하자 허리가 벌어지고, 가랑이가 접히며, 바짓단 입구가 지나치게 넓어졌습니다. 독립적인 버텍스 이동 대신 5 × 5 × 5 변형 케이지를 사용했습니다. 이는 조작점의 이동이 주변 천을 함께 변형하는 성긴 그리드입니다. 케이지는 수직 밑위를 고정한 상태로 원본 메시와 UV 솔기를 보존합니다. 울퉁불퉁한 접힘은 줄었지만, 처음에는 허리밴드가 몸통에서 떨어진 채 남았습니다.

다음 보정에서는 허리밴드의 실제 136개 버텍스로 이루어진 경계 루프를 식별하고 몸통 단면에 맞춰 피팅했습니다. 그 결과 측면 실루엣이 개선되었습니다. 하지만 뒤쪽을 검사하자 경계 및 버텍스 여유 공간 검사에서 놓친 클리핑이 드러났습니다. 천 삼각형은 각 버텍스가 몸과 떨어져 있어도 그 사이에서 바디를 관통할 수 있습니다. 뒤쪽 허리밴드에는 삼각형 단위의 보정이 필요했습니다. 경계 제약을 강화하고 허리밴드 스트립 전체를 확인한 뒤, 신체 삼각형의 평면을 가로지르는 의상 면만 바깥쪽으로 이동했습니다. 허리밴드 높이는 고정된 상태로 유지했습니다.

반바지 리비전의상 전체: 기본 자세에서 영향을 받는 삼각형뒤쪽 허리밴드: 기본 자세에서 영향을 받는 삼각형
초기 피팅 기준선143별도로 측정하지 않음
첫 번째 허리밴드 제약을 적용한 케이지 피팅289
현재 뒤쪽 허리밴드 보정190

최종 검사에서는 샘플링한 6가지 자세 모두에서 뒤쪽 허리밴드 관통이 0건이었으며, 다른 부위에는 모든 자세에서 영향을 받는 삼각형이 19개 있었습니다. 뒤쪽 영역은 원본 의상 삼각형의 중심점을 기준으로 정의합니다. 따라서 이는 특정 영역에 대한 결과이지, 반바지 전체가 적합하다는 판정은 아닙니다. 반바지 측정 데이터에는 이전 허리밴드 리비전과 현재 보정 결과가 모두 포함되어 있습니다.

뒤에서 본 현재 데님 반바지. 보정된 허리밴드와 아직 남아 있는 아래쪽 뒤 솔기 결함이 보입니다.

현재 뒤쪽 모습입니다. 검사한 자세에서는 허리밴드 클리핑이 보정되었지만, 아래쪽 뒤 솔기 결함은 여전히 보입니다. 다리 트임도 다듬어야 합니다.

허리밴드 목표에는 이 모델 둘레에 의도한 14 mm의 여유분이 포함되어 있습니다. 최종 경계는 해당 목표와 평균 2.0 mm, 최대 5.4 mm 차이가 납니다. 이는 장면의 미터 단위 규약에 따른 피팅 매개변수와 목표 오차일 뿐, 보편적인 재단 치수나 충돌 방지 보장을 의미하지 않습니다.

실무적으로 얻은 교훈은 각 의상에 밑위, 실루엣, 솔기 무결성, 부착, 충돌 여유 공간에 관한 별도의 요구 사항을 두어야 한다는 것입니다. 반바지의 다음 작업은 각 밑단을 해당 허벅지 둘레에 맞게 제약하고, 보정된 허리밴드를 흐트러뜨리지 않으면서 뒤 솔기를 수정하는 것입니다. 이후에는 보폭이 큰 걷기, 앉기, 쪼그려 앉기 테스트를 수행해야 합니다. 이산적인 검사는 자체 충돌, 동일 평면상의 접촉, 샘플링된 프레임 사이의 움직임을 다루지 못합니다.

세부 검사: 소매와 손목 ​

소매는 이 전체 워크플로에서 문제를 뚜렷하게 드러낸 사례 중 하나였습니다. 이전에 피팅한 스웨터는 캐릭터 전체가 보이는 배율에서 개선된 버전과 비슷해 보였습니다. 하지만 클로즈업과 손목 스트레스 자세에서는 차이가 더 분명하게 나타났습니다.

아래 뷰어에는 개선된 소맷단이 표시됩니다. 보정 전/후 비교를 활성화하면 이전 소맷단과 나란히 살펴볼 수 있습니다. 두 버전 모두 이미 피팅과 스키닝이 완료된 상태입니다. 손목 앞으로 45° 또는 **손목 뒤로 45°**를 선택한 다음 소맷단 입구를 살펴보세요. 이는 개선 전후를 비교하는 것이며, 전체 피팅 과정의 시작과 끝을 비교하는 것은 아닙니다.

각 소맷단의 실제 경계 루프를 추출하고 팔 매핑을 팔꿈치 구간에서 블렌딩했으며, 소맷단 보정을 인접한 원단 영역까지 분산했습니다. 이 개구리 캐릭터에서는 소맷단 입구를 팔뚝 쪽으로 50 mm 이동하여 큰 손을 위한 공간을 더 확보했습니다. 이 오프셋은 해당 캐릭터에 맞춰 조정한 매개변수이며, 의상에 보편적으로 적용되는 규칙이 아닙니다.

검사 자세이전 피팅: 영향을 받는 소매 삼각형개선된 피팅
기본 자세120
팔꿈치 75° 굽힘120
손목 앞으로 45°790
손목 뒤로 45°600

더 광범위한 테스트에서는 샘플링한 애니메이션 프레임 22개 중 6개에서 여전히 영향을 받는 소매 삼각형이 1개 발견되었습니다. 또한 의상 전체에는 소매 마스크 바깥의 기본 자세에서 영향을 받는 삼각형이 21개 남아 있습니다. 네 가지 검사 자세에서 문제가 없다고 해서 의상에 충돌이 전혀 없는 것은 아닙니다.

이는 오프라인에서 수행한 이산적 삼각형 관통 측정입니다. 의상의 자체 교차, 동일 평면상의 접촉, 샘플링된 프레임 사이에서 발생하는 사건은 제외하며, 소매 마스크에는 가장 안쪽의 어깨 전환 영역이 포함되지 않습니다. 데모는 실시간 충돌 점수를 계산하지 않습니다. 소매 측정 데이터와 애니메이션 측정 데이터는 별도로 제공됩니다.

6. 내보내고 다시 불러온 뒤 검증하기 ​

옷을 입힌 캐릭터는 피팅 도구 밖으로 내보낸 후에도 온전하게 유지되어야 합니다. 대상 뷰어나 엔진에서 지오메트리, 머티리얼, UV, 스켈레톤 바인딩, 애니메이션을 검증하세요.

결과를 GLB로 내보낸 뒤 Three.js에서 독립적으로 불러왔습니다. 스웨터의 텍스처와 스키닝은 그대로 유지되었습니다. UV 솔기로 인해 내보낸 버텍스 수가 2,126개에서 2,386개로 증가하지만, 그 자체가 지오메트리 오류를 뜻하지는 않습니다. 다시 불러온 후 측정한 기본 자세 표면의 최대 불일치는 파일의 미터 단위 규약에서 0.001 mm 미만이었습니다.

이는 내보내기 일관성을 확인한 결과이지, 물리적으로 정확한 재단을 구현했다는 주장이 아닙니다. 공개 Rigger의 전체 의상 업로드 및 내보내기 워크플로는 이 실험에 통합되거나 검증되지 않았습니다.

AI가 도움이 되는 부분과 여전히 엔지니어링이 필요한 부분 ​

사람의 검토를 통해 바지의 처진 가랑이, 반바지의 헐거운 허리, 이전 검사에서 놓쳤던 뒤쪽 클리핑이 드러났습니다. 이후 AI를 활용한 시각 검사는 정면, 측면, 후면의 클로즈업 뷰를 살펴봤으며, 메시 결함을 더 쉽게 확인할 수 있도록 임시 단색 머티리얼도 사용했습니다. 이러한 관찰 결과를 측정된 지오메트리와 함께 검토하고 실패한 반복 작업도 보존했습니다.

이 피드백은 방법론을 바꾸었습니다. 스켈레톤이 일치한다고 해서 의상 형태가 적합한 것은 아니었고, 버텍스가 신체와 겹치지 않는다고 해서 삼각형도 관통하지 않는 것은 아니었으며, 충돌 수가 줄었다고 해서 왜곡된 실루엣이 정당화되는 것도 아니었습니다.

이는 명시적인 랜드마크와 피팅 규칙을 사용한 AI 보조 엔지니어링이었습니다. 범용 의상 피팅 모델을 학습한 것도 아니며, 비전 모델이 임의의 의상을 적합하다고 판정할 수 있음을 입증한 것도 아닙니다.

다음 단계는 반바지의 솔기 및 밑단 제약, 형태를 보존하는 바지 피팅, 실제 인간형 베이스 바디, 그리고 튜닝 과정에서 제외해 둔 의상을 통한 검증입니다. 또한 더 광범위한 애니메이션 테스트와 실제 Rigger 워크플로를 연결하는 어댑터도 필요합니다.

재사용 가능한 워크플로는 이미 명확합니다. 적합한 의상 선택 → 신체와 기본 자세 설정 → 형태 피팅 → 부착 정보 전이 → 움직임과 충돌 테스트 → 내보내기 검증입니다. 이 실험은 해당 프로세스의 구체적인 구현과 함께, 그럴듯한 이미지 하나만으로는 충분하지 않은 지점을 보여줍니다.