# IMAGE-GEN RIGGING · 조립형(페이퍼돌) 가이드 — 이소리 > **목표**: "바디(제스처) + 복장 + 헤어 + 악세서리"를 골라 **인형 옷갈아입히기식으로 조립**해 무한에 가까운 변형을 만든다. > 이 문서는 **전체 구조·조립 규칙·네이밍·색상 처리**의 총괄 가이드다. 실제 생성 프롬프트는 아래 하위 문서에 있다. > 캐릭터 외형 기준: `BRAND_CHARACTERS.md`. (구버전 요청서는 `*.old`로 보관됨.) --- ## 1. 왜 "하이브리드" 조립인가 (필독) 이미지 생성 AI는 **매 장을 독립적으로 그려서 서로 정합(위치·비율·크롭)이 맞지 않는다.** → 따라서 **정합이 필요한 것은 함께 굽고, 국소 부착·색상만 런타임 레이어**로 조립한다. | 레이어 | 처리 방식 | 근거 | |---|---|---| | **바디 + 복장** | **함께 생성**(복장이 몸에 발라진 헤드리스 바디). 복장별 1세트 | 몸-옷 정합이 깨지면 안 됨 | | **헤어 + 표정** | **머리 라이브러리로 함께 생성**(머리+표정 프레임). 머리는 **목(neck) 앵커**로 어느 바디에나 합성 | 얼굴-머리 정합 필요, 목은 국소 앵커라 합성 OK | | **악세서리** | **진짜 오버레이** — 부착점에 얹기 | 작고 국소 부착이라 정합 문제 적음 ✅ | | **색상(헤어 염색·네온)** | **코드에서 틴트(hue-shift)** — 이미지 생성 안 함 | 6색×N모양 이미지 폭발을 제거 | **핵심 조립식**: `헤드리스 바디(복장)` + `머리(헤어모양)` + `표정 프레임` + `악세서리들` + `코드 색상` → 완성 캐릭터. 동작(끄덕·갸웃·호흡·손흔듦 등)은 **리그(코드 트랜스폼) + 표정 프레임**으로, 이미지 없이 표현한다. --- ## 2. 조립 앵커(정합점) 규칙 모든 파츠/오버레이는 **정해진 앵커**에서 겹치도록 그린다(약간의 겹침 여백 포함). - **목(neck)**: 헤드리스 바디 ↔ 머리. (모든 바디는 **머리 없이**, 목에서 잘라 그린다.) - **어깨(shoulder)**: 몸통 ↔ 팔. - **귀/정수리(head)**: 머리 ↔ 헤드폰·머리띠(고양이귀·클럽밴드). - **목선(neckline)**: 머리/몸통 ↔ 목걸이. - **손목(wrist)**: 팔 ↔ 팔찌. - **발(feet)**: 다리 ↔ 신발(운동화·구두). *신발 교체는 서있는 idle 포즈에서 가장 안정적(발 각도 고정).* ## 3. 색상 = 코드 처리 (이미지 아님) - 헤어 6톤: **밝은톤 · 약간 어두운톤 · 파랑 · 노랑 · 붉은계열 · 은색** → **런타임 hue/색조 변환**으로 생성. - 이를 위해 헤어 문서에서 각 머리마다 **`hairmask`(머리카락만 알파)**를 함께 요청 → 코드가 머리카락 영역만 틴트. - 네온 악세서리(클럽밴드·팔찌 등)도 같은 방식으로 색 변형 가능. - **즉, 헤어는 "모양"만 이미지로 만들고 "색"은 만들지 않는다.** --- ## 4. 문서 지도 (하위 요청서) - **바디(복장별)** — 헤드리스 바디 파츠 + 제스처 바디컷: `IMAGE_GEN_BODY_TRACK.md`(트랙슈트·기준본) · `_DRESS_SHORT` · `_DRESS_LONG` · `_JEANS` · `_TSHIRT` - **헤어** — 머리+표정 라이브러리(모양 4종) + hairmask: `IMAGE_GEN_HAIR.md` - **악세서리** — 오버레이 7종: `IMAGE_GEN_ACCESSORIES.md` - 각 문서는 **위 → 아래 순서대로** 붙여넣기(원하는 지점까지만 해도 됨). **📋 코드블록만** AI에 붙여넣는다. - 모든 바디/머리 생성 시 **`Characters/00_sheets/sori_sheet.png` 첨부**(동일 인물 유지). --- ## 5. 네이밍 규칙 (전체) ``` 바디(복장별) sori_body__ outfit = track · dressS · dressL · jeans · tee part = apose · torso · arm_r · arm_l · legs (헤드리스 리그 파츠) pose = idle_full · idle_upper · wave · handwave · listen · present · dj · piano · control · thumbsup · heart · clap · peace · armscross · bow · shrug · think · point · cheer · success · joy (헤드리스 제스처 바디컷) 헤어 sori_head_ (민트 기본색 머리, 헤드폰 없음, 목 앵커) sori_head__ (같은 크롭, 표정만 다름) sori_hairmask_ (머리카락만 알파 — 코드 색상용) shape = short · long · waveS · waveL expr = neutral · blink · talk · talk_wide · smile · laugh · positive · negative · confused · wink · surprised · thinking · cool · love · shy · sad · pout · sleepy · determined · playful · angry · proud · curious · sing … 악세서리 acc_catears · acc_clubband · acc_headphones · acc_bracelet · acc_necklace · acc_sneakers · acc_heels 색상(코드) tone_light · tone_dark · blue · yellow · red · silver (이미지 아님) ``` --- ## 6. 우선순위 (권장 생성 순서) 1. **헤어 기본 1모양**(short) 머리 + 핵심 표정(neutral/blink/talk) → 파이프라인 검증. 2. **바디 트랙슈트** 리그 파츠(§1) + idle_upper → 배경 리그 교체. 3. 제스처 바디컷(wave·listen·success·joy·dj·piano …) 순차. 4. 나머지 헤어 모양·복장·악세서리 → 조립 폭 확장. 5. 색상 6톤은 **코드**로(이미지 생성 불필요). > ⚠️ 이미지 수가 많아지는 방식이다(조립 다양성의 대가). 우선순위 상위부터, 필요한 만큼만 생성해도 앱은 동작한다.