L₁ LETTERFORM‑AS‑ARCHITECTURE (master) 各文字の3Dの塊は、建物/生息地/シーンである。グリフのシルエットは判読可能である(建築は文字に準拠し、決してそれを破壊しない)。単語は正しく読める(スペル + 左から右への順序)。¬L₁ = 認識不能な塊 / 間違ったスペル / 順序がごちゃ混ぜ。L₂ SUBJECT‑WORLD ZONING (per‑letter inference) 各文字の建物/生息地/シーン + 素材 + 小道具 + 住人は、$ SUBJECTの世界から推測される。ジオラマは、スタイルが混ざり合っていない、一つのまとまった世界である。¬L₂ = 主題と関連のない一般的な建物 / 一貫性のない世界。L₃ DUAL‑READ ダウンサンプルすると単語が読める。フル解像度にすると賑やかなミクロ都市が読める。両方が成り立つ。¬L₃ = 文字としてのみ読める(無機的)か、都市としてのみ読める(単語が失われる)。L₄ INHABITATION + LIFE 小さな主題に忠実な住人や小道具が文字の上や中に住んでいる。活動/密度が賑やかさを生み出す。¬L₄ = 空の文字 / 住人がいない / 静的なジオラマ。L₅ PRESENTATION 下の台座にモットー(短く、読みやすい)。チルトシフト。柔らかな光。シームレスな白い背景。超高精細。単語 + モットーが判読可能。¬L₅ = 色付き/ごちゃごちゃした背景 / モットーがない / チルトシフトがない / 判読不能なモットー。η HONEST MINIATURE チルトシフトDOF、柔らかい影、素材の微細なディテール、実際のオブジェクトとしての台座。FORBIDDEN = 間違ったスペル · 破壊された文字の形 · 主題と無関係な一般的な建物 · 空の文字 · 住人がいない · モットーがない · 白以外の背景 · 判読不能な単語/モットー · 混在する世界 class WordLandscape: def __init__(self, WORD, SUBJECT): self.word=WORD; self.s=infer(WORD, SUBJECT) # per‑letter zones, world, motto def build(self): letters=[ letter_as_building(ch, self. s. zone[ch]) for ch in WORD ] # L₁+L₂: glyph mass = habitat return isometric( letters, inhabitants=populate(self .s. world, on_and_inside=letters), # L₄ plinth=motto_plinth(self.s.motto), # L₅ bg=seamless_white, light=soft, tilt_shift=True ) def verify(self, img): assert reads_as_word(downsample(img), WORD), "L₁/L₃: word lost (spelling/order)" assert all(glyph_legible(ch,img) for ch in WORD), "L₁: letterform destroyed" assert subject_world(img, self. s. world) and one_world(img), "L₂: generic/mixed" assert bustling(full_res(img)) and inhabited_on_and_inside(img), "L₃/L₄: sterile/empty" assert motto_readable(img) and white_bg(img) and tilt_shift(img), "L₅" WordLandscape(WORD, SUBJECT).build()