| name | webtoon-prompt-engineering |
| description | shot_list.json의 각 컷을 캐릭터 일관성이 보장된 영문 이미지 생성 프롬프트(prompts.json)로 변환하는 스킬. 캐릭터 시트의 prompt_block을 그대로 복붙하여 회차 간 외형 드리프트를 방지한다. image-prompt-engineer 에이전트가 호출한다. |
Webtoon Prompt Engineering — 일관성 보장 프롬프트 작성
핵심 룰
- 캐릭터 디스크립터 토씨 변경 금지 —
sheet.json.prompt_block 그대로 복붙
- 모든 한글 → 영어 번역. 고유명사만 로마자
- 컷별 프롬프트 구조 고정 순서: style_preamble → shot_composition → location → character_prompt_block(s) → signature_tokens → palette_tokens
- 시드 그룹 단위 묶음 — 같은 캐릭터·같은 회차는 같은 시드로 외형 안정화
프롬프트 골격
[STYLE_PREAMBLE] + [SHOT_COMPOSITION] + [LOCATION] + [CHARACTERS] + [SIGNATURES] + [PALETTE] + [QUALITY]
STYLE_PREAMBLE (모든 컷 공통, style_bible에서 추출)
"Korean vertical-scroll webtoon, digital painting, cel-shaded with soft gradients,
thin clean line art, flat coloring with neon glow, cold cinematic mood,
predawn-to-night palette, mobile-optimized vertical composition"
SHOT_COMPOSITION (shot_type → 영어 토큰)
| shot_type | 토큰 |
|---|
| close_up | "extreme close-up, face fills frame, eye-level" |
| medium | "medium shot, waist-up, eye-level" |
| wide | "wide establishing shot, full-body, low to mid angle" |
| high_angle_wide | "high-angle aerial wide shot, bird's eye view" |
| split_panel | "4-panel split composition, equal quadrants" |
| silence | "minimal abstract composition, single focal point" |
LOCATION (shot_list의 location 필드 → 영어 의역)
원본의 묘사를 짧은 영어 구문으로. 예: "새벽 서울 부감" → "predawn Seoul cityscape from above"
CHARACTERS (sheet.json.prompt_block 그대로 + 컷별 액션 한 줄)
복수일 경우 ;로 구분. 예:
"23yo Korean man Han Do-hyun, short messy dark brown #2A2624 hair, dark circles, grey hoodie #6E6E72, red hospital ID band on left wrist, void-black peripheral vision (no HUD), Korean webtoon style, [action: standing at the back of a group, fidgeting with hoodie strings];
31yo Korean man Park Jae-jun, charcoal grey #2E2E33 jacket, brass watch, faint scar on left jawline, slightly hunched posture, [action: checking wristwatch in foreground]"
SIGNATURES (signatures_used 필드 → 영어 토큰)
| signature | 토큰 |
|---|
| cyan_grid | "translucent cyan-teal #00E5D1 HUD grid at frame edges, holographic system UI floating mid-air" |
| memory_silhouette | "single-line bone-white #F2EEE3 silhouette of a human figure rising behind the monster, outline only no detail" |
| error_glitch | "magenta #FF1C6B pixel glitch streaks across the screen edges, broken Hangul and digits, ERR_NULL_PLAYER text fragment" |
| operator_voice | "(text handled in post-processing, do not render text)" |
| monster_emotion | "(text handled in post-processing, do not render text)" |
PALETTE (palette 필드 → HEX 토큰 나열)
"dominant palette: void-black #050608, system cyan #00E5D1, error magenta #FF1C6B"
QUALITY (전 컷 공통)
"high detail, sharp focus, cinematic lighting, 8k quality"
도현 시점 컷 특별 처리
signatures_used에 cyan_grid가 없고 도현이 등장하는 컷 = 도현 시점 가능성. 이때:
- positive에 "completely empty void-black peripheral vision, NO HUD elements, NO cyan grid" 명시
- negative에 "holographic HUD, glowing cyan overlay, futuristic UI elements" 강화
전역 부정 프롬프트
"western comic style, disney, japanese moe anime, watercolor, oil painting,
extra fingers, deformed face, blurry, low quality, bright cheerful mood,
ugly, distorted anatomy, text in image, watermark"
시드 그룹 결정 규칙
| 시드 그룹 명명 | 사용 시점 |
|---|
ep{NN}_{character-kebab} | 단일 캐릭터 단독 컷들 |
ep{NN}_group_{primary-char} | 다인 컷, 주인공 기준 |
ep{NN}_cut{ID}_solo | 다른 컷과 묶기 어려운 단발 |
ep{NN}_location_{place} | 환경/풍경 위주 컷 |
같은 시드 그룹은 codex-image 배치에 같이 묶기.
prompts.json 출력 예시 (1화 컷 1)
{
"episode": 1,
"model_preference": "codex-image-batch-5",
"global_negative": "western comic style, disney, japanese moe anime, watercolor, oil painting, extra fingers, deformed face, blurry, low quality, bright cheerful mood, ugly, distorted anatomy, text in image, watermark",
"global_style_preamble": "Korean vertical-scroll webtoon, digital painting, cel-shaded with soft gradients, thin clean line art, flat coloring with neon glow, cold cinematic mood, predawn-to-night palette, mobile-optimized vertical composition",
"cuts": [
{
"cut_id": 1,
"aspect_ratio": "9:16",
"size": "1024x1792",
"seed_group": "ep01_location_seoul",
"positive_prompt": "Korean vertical-scroll webtoon, digital painting, cel-shaded, thin line art, cold cinematic mood; high-angle aerial wide shot, bird's eye view; predawn Seoul cityscape from above, skyscrapers with windows; translucent cyan-teal #00E5D1 HUD grid at frame edges, tiny cyan light dots leaking from windows like stars across the city; dominant palette: void-black #050608, system cyan #00E5D1; high detail, sharp focus, cinematic lighting, 8k quality",
"negative_prompt": "[inherits global]",
"expected_characters": [],
"post_overlay_text": {
"narration_doh_yun": "이 도시에선 다섯 명 중 한 명이 시스템을 본다.",
"language": "ko"
}
}
]
}
체크리스트