Files
Dansori_EQ/docs/IMAGE_GEN_RIGGING_GUIDE.md
T
2026-07-04 10:34:46 +09:00

5.4 KiB

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>_<part|pose>
   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_<shape>            (민트 기본색 머리, 헤드폰 없음, 목 앵커)
             sori_head_<shape>_<expr>     (같은 크롭, 표정만 다름)
             sori_hairmask_<shape>        (머리카락만 알파 — 코드 색상용)
   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톤은 코드로(이미지 생성 불필요).

⚠️ 이미지 수가 많아지는 방식이다(조립 다양성의 대가). 우선순위 상위부터, 필요한 만큼만 생성해도 앱은 동작한다.