{
  "status": "completed",
  "completed_count": 1,
  "applicable_count": 1,
  "failed_count": 0,
  "data": {
    "director_notes": [
      "꿈·회상으로 제시되는 과거 이미지는 현재 공간의 물리적 대상이 아니라 의식/기억 이미지로 처리하며, 현재 장면의 인물·사물과 같은 프레임에 실재처럼 배치하지 않는다.",
      "기계 장치의 시점 화면에 뜨는 식별창·문자·그래픽은 장치 내부의 인식 UI로 처리하고, 장면 공간 밖으로 떠 있는 홀로그램처럼 그리지 않는다.",
      "음악이나 소리에 반응하는 기계적 활성화는 초자연 현상이 아니라 장치 반응으로 판단하며, 마법적 오라나 영적 효과를 추가하지 않는다.",
      "변장이나 외투로 가려진 비인간형 대상은 겉실루엣만 위장된 상태로 처리하고, 가려진 내부 구조를 동시에 노출하지 않는다.",
      "어두운 통제 환경에서는 조명 부족 자체를 유지하며, 보이지 않아야 할 대상을 과도하게 밝히거나 명확하게 드러내지 않는다.",
      "평면 디스플레이·전화기·방송 장치에서 나오는 정보는 매체 표면 또는 음향 효과로만 표현하고, 매체 밖 현실 공간에 물리적으로 존재시키지 않는다."
    ],
    "era": "2069년 근미래",
    "region": "대한민국 인천의 난민 거주 구역과 주변 도시권, 일부 미국 과거 회상 배경",
    "rules": [
      {
        "description": "작품 전반은 해수면 상승과 난민 수용 체계가 일상화된 근미래 디스토피아를 배경으로 하며, 현대적 요소와 노후화된 잔존 물자가 공존한다.",
        "rule_type": "time_period",
        "visual_guideline": "근미래형 도시·캠프 환경을 기본으로 하되 모든 공간은 낡고 오염되고 임시 보수된 질감을 유지한다. 완전히 매끈한 하이테크 유토피아처럼 보이지 않게 하고, 과거 물건은 고철·재활용품·구식 장비로 자연스럽게 섞는다."
      },
      {
        "description": "자율주행, 생활형 로봇, 경찰·군용 장비, 스마트폰·노트북·이어피스, 방송 스피커, 인공 제방 같은 기술이 보편화된 세계관이다.",
        "rule_type": "technology",
        "visual_guideline": "기술 장비는 실용적이고 마모된 근미래 산업 디자인으로 표현한다. 스마트 기기와 로봇은 존재하되 과도하게 초현실적이거나 우주선 수준의 미래 기술처럼 보이지 않게 하며, 구식 음향기기나 낡은 차량은 재활용된 물건으로 처리한다."
      },
      {
        "description": "로봇 또는 자동화 장치의 시점에는 대상 인식, 비교, 판정 정보가 화면 그래픽으로 표시될 수 있다.",
        "rule_type": "projection",
        "visual_guideline": "기계 시점은 렌즈 왜곡, 스캔 라인, 작은 정보창, 간결한 영문 UI 등으로 표현한다. 이 그래픽은 관객에게 보이는 시점 오버레이일 뿐 실제 공간에 떠 있는 입체 투영물로 그리지 않는다."
      },
      {
        "description": "꿈·회상 이미지는 현재 현실과 구분되는 비물리적 기억/의식 표현으로 제시된다.",
        "rule_type": "projection",
        "visual_guideline": "회상성 이미지는 흑백, 끊기는 프레임, 거친 애니메이션적 질감, 높은 콘트라스트를 사용해 현실 장면과 명확히 구분한다. 현재 공간의 조명·색감과 섞지 말고 독립된 기억 이미지로 처리한다."
      },
      {
        "description": "작품의 주요 비인간형 로봇은 고릴라형 체형, 낡은 금속 구조, 파란 눈빛, 기계음성 같은 외형 규칙을 가진다.",
        "rule_type": "other",
        "visual_guideline": "고릴라형 로봇은 낮고 넓은 상체, 긴 팔, 무겁고 둔탁한 관절, 바닷물과 쓰레기장에 오래 노출된 부식·스크래치·먼지 질감으로 표현한다. 감정 표현은 얼굴 근육보다 눈빛, 머리 각도, 자세, 제한적인 기계식 표정으로 전달한다."
      },
      {
        "description": "인간형 또는 생활형 로봇은 외피 아래 기계 구조가 존재할 수 있으며, 손상이나 마모 시 인공물임이 드러난다.",
        "rule_type": "body_deformation",
        "visual_guideline": "로봇 외피의 손상은 비그래픽하게 처리하며, 금속 골격·회로·합성 소재가 드러나는 방식으로 표현한다. 인간의 신체 훼손처럼 묘사하지 말고 산업 부품의 파손과 노출로 시각화한다."
      },
      {
        "description": "육체적 피로, 부상, 열악한 생활 조건은 인물 외형에 반영되지만 과도한 신체 훼손 묘사는 피해야 한다.",
        "rule_type": "body_deformation",
        "visual_guideline": "인물의 손상이나 피로는 더러워진 옷, 흐트러진 머리, 절뚝이는 자세, 멍, 붕대, 땀, 창백한 안색 등으로 절제해 표현한다. 노골적 상처 묘사나 그래픽한 디테일은 피한다."
      },
      {
        "description": "난민촌 주민, 노동자, 경비·경찰·군 관계자, 종교인 등 사회적 위치에 따라 의상 대비가 뚜렷하다.",
        "rule_type": "costume",
        "visual_guideline": "난민과 아이들은 낡고 여러 겹 껴입은 실용복, 재활용된 공구 주머니, 마스크, 먼지 묻은 신발 등으로 표현한다. 공권력·관리 인물은 제복·군용복·관리자풍 정장 요소를 사용하고, 종교인은 로먼 칼러처럼 직분이 드러나는 절제된 복식을 사용한다."
      },
      {
        "description": "비인간형 대상이 인간처럼 보이도록 가려지는 경우가 있으나, 이는 실제 변신이 아니라 의상에 의한 외형 은폐다.",
        "rule_type": "costume",
        "visual_guideline": "외투, 모자, 헐렁한 옷 등으로 덩치와 윤곽을 가리는 식으로 표현한다. 가까이서 보면 부자연스러운 체형이나 움직임이 암시될 수 있지만, 신체가 인간으로 변화한 것처럼 그리지 않는다."
      }
    ],
    "source_language": "ko",
    "t2i_context": "Reflect only the demographic cues explicitly given for each character, such as Korean, Korean American, mixed-race, Latin, Black-Latin, or white-mixed backgrounds; do not force a single regional default onto unspecified people. The shared look is gritty near-future dystopian realism with polluted coastal haze, worn industrial textures, muted colors, low-key practical lighting, and a tense but grounded adventure-drama mood. Keep the atmosphere dark, weathered, and socially precarious without graphic violence."
  },
  "step_id": "visual_world_rules",
  "run_id": "d7f213c1-e0ba-441d-958c-607c811928db",
  "resolved_model": "gpt",
  "updated_at": "2026-06-25T06:17:24.523746+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}