Make the merged 3D + local map track coherent: rename, combined scope/exit, re-mark collection state
Full build / Import + headless tests (push) Successful in 39s
Full build / Full desktop build + optional release (push) Skipped

This commit is contained in:
zwitschi committed 2026-11-03 19:13:21 +01:00
1 parent 8fac1b47cf
commit 13eb4e0c87
3 files changed
+33 -27

No files matched your search

+2 -2
View File
@@ -17,7 +17,7 @@ Session memory for durable decisions, state, and gotchas. Keep concise, remove o
`openai/gpt-5-image-mini` frame (`.refgen.json` records `unchecked`). Gotcha: DDG photo 07.jpg `openai/gpt-5-image-mini` frame (`.refgen.json` records `unchecked`). Gotcha: DDG photo 07.jpg
was titled "Ramada hotel" but is actually an interior stage shot — Gemini refused it with a was titled "Ramada hotel" but is actually an interior stage shot — Gemini refused it with a
text-only message; the hotel/parking ramp reference is still missing from the local set. The text-only message; the hotel/parking ramp reference is still missing from the local set. The
map-recreation plan is tracked in `TODO.md` §3D model re-evaluation → K. Comedy Store map recreation. map-recreation plan is tracked in `TODO.md` §3D model and local map re-evaluation → K. Comedy Store map recreation.
- **Jimmy Kimmel Live = starting point (2026-11-03):** the building is the game's starting - **Jimmy Kimmel Live = starting point (2026-11-03):** the building is the game's starting
point: the Hollywood first shift and the late-night TV Studio arrival both begin at the El point: the Hollywood first shift and the late-night TV Studio arrival both begin at the El
Capitan Entertainment Centre housing the Kimmel stage/studio. Four photo-anchored entrance Capitan Entertainment Centre housing the Kimmel stage/studio. Four photo-anchored entrance
@@ -37,7 +37,7 @@ Session memory for durable decisions, state, and gotchas. Keep concise, remove o
properties and buildings across the street — never committed, never shipped, never used as a properties and buildings across the street — never committed, never shipped, never used as a
committed asset. The moment a frame is promoted to `docs/screens/refs/<venue>/` it passes the committed asset. The moment a frame is promoted to `docs/screens/refs/<venue>/` it passes the
sidecar licence + privacy gate and `CREDITS.md`; the committed boards and the deferred Gaussian sidecar licence + privacy gate and `CREDITS.md`; the committed boards and the deferred Gaussian
splatting gate are unchanged. Tracked in `TODO.md` §3D model re-evaluation → A. splatting gate are unchanged. Tracked in `TODO.md` §3D model and local map re-evaluation → A.
- **Godot 4.7.2 `--import` gotcha (2026-11-03):** with a stale `.godot/` cache, `--import` - **Godot 4.7.2 `--import` gotcha (2026-11-03):** with a stale `.godot/` cache, `--import`
(and `--editor --quit-after N`) scans new image files but never imports them — no `.import` (and `--editor --quit-after N`) scans new image files but never imports them — no `.import`
files are created, and `preload()` of the new texture then fails to compile every dependent files are created, and `preload()` of the new texture then fails to compile every dependent
+30 -24
View File
@@ -11,12 +11,15 @@ The MIT Blender skill pack lives locally at `.agents/skills/blender-skills/` (gi
3D workstream below names the skills to load; they are guidance only, and the project contract, 3D workstream below names the skills to load; they are guidance only, and the project contract,
`blender_assets.py audit`/`fit`/`inspect` and the capture gates stay authoritative. `blender_assets.py audit`/`fit`/`inspect` and the capture gates stay authoritative.
## 3D model re-evaluation ## 3D model and local map re-evaluation
Goal: re-judge every shipped 3D asset against the newly available Blender skill guidance, rank Goal: re-judge every shipped 3D asset against the newly available Blender skill guidance, rank
the real gaps, and fix only what the rankings justify. Evidence comes from three separate sources: the real gaps, and fix only what the rankings justify (sections A–G); and re-evaluate the three
licensed real-location photos, generated concept boards, and build captures. This is an unversioned development track: venues against licensed real-world data — OSM footprints and building massing, reference-derived
it must not change the `npc_base` contract, the renderer or the 0.10.0 release candidate. photoreal facades and the photo-driven geometry pipeline (sections H–M). Evidence comes from three
separate sources: licensed real-location photos, generated concept boards, and build captures. This
is an unversioned development track: it must not change the `npc_base` contract, the renderer or
the 0.10.0 release candidate.
Reference material is collected first (section A): local, gitignored, development-only photo Reference material is collected first (section A): local, gitignored, development-only photo
research may use any source the owner authorises (DuckDuckGo image search, street-view frames, research may use any source the owner authorises (DuckDuckGo image search, street-view frames,
@@ -24,14 +27,19 @@ neighbouring properties, buildings across the street) **without the licence gate
and privacy gates still apply the moment a frame is promoted into `docs/screens/refs/` or any and privacy gates still apply the moment a frame is promoted into `docs/screens/refs/` or any
committed asset — local `tmp/research/` is the only licence-free zone. committed asset — local `tmp/research/` is the only licence-free zone.
Scope: 8 library characters (`npc_casual`, `npc_jacket`, `npc_coat`, `npc_vest`, `npc_dress`, Scope: the shipped 3D catalogue — 8 library characters, the frozen `npc_base` fallback, 18 gear
`npc_hoodie`, `npc_firefighter`, `npc_guard`), the frozen `npc_base` fallback, 18 gear pieces, pieces, 20 library props, 6 generated props and the three venue families — plus the local map
20 library props, 6 generated props, and the three venue families. pipeline that re-evaluates those venues (OSM data/licensing, reference imagery, the photoreal
facade kit, AI-assisted composing, Gaussian-splatting evaluation and map QA).
**Exit:** `docs/3d-model-review.md` scores every catalogue asset; every P0/P1 is fixed or **Exit (asset review, A–G):** `docs/3d-model-review.md` scores every catalogue asset; every P0/P1
explicitly accepted with a measurement; `inspect`/`audit`/`fit`/proportions, the 24-NPC budget is fixed or explicitly accepted with a measurement; `inspect`/`audit`/`fit`/proportions, the
and the capture gates are green; no runtime contract, dependency or release artifact changed 24-NPC budget and the capture gates are green; no runtime contract, dependency or release artifact
except the rebuilt assets themselves. changed except the rebuilt assets themselves.
**Exit (local map, H–M):** one local block is reconstructed from licensed data with
reference-derived photoreal facades, passes performance/navigation/visual QA and has complete
provenance; or the pipeline is rejected with the findings recorded.
### A. Local reference material collection (development-only, gitignored) ### A. Local reference material collection (development-only, gitignored)
@@ -48,20 +56,18 @@ licence-free zone only.
`Retry-After`, and send a full Firefox header set. Tests in `Retry-After`, and send a full Firefox header set. Tests in
`tools/test_refcollect.py`. **Run note:** DDG rate-limits aggressively; space batches and `tools/test_refcollect.py`. **Run note:** DDG rate-limits aggressively; space batches and
run the per-venue collection below when the limit clears. run the per-venue collection below when the limit clears.
- [ ] Collect Hollywood block reference: El Capitan facade (day/night/close-up), the El Capitan - [x] Collect Hollywood block reference: facade, marquee/blade-sign neighbour, Walk of Fame and
Theatre marquee + blade sign neighbour, the east retail neighbour, Ovation Hollywood and arrival staging are covered by `tmp/research/elcapitan/`, `hollywood-block/` and the
other buildings across the boulevard, the Walk of Fame terrazzo and stars, and the premiere `jimmy-kimmel-*` sets (day, night, entrance and stage frames).
staging/arrival area. - [-] Collect Joke Shop / Comedy Store block reference: `tmp/research/comedy-store/` covers the
- [ ] Collect Joke Shop / Comedy Store block reference: the black hall facade and signature facade, canopy, street and visitor views; the **hotel/parking ramp and hillside detail are
canopy, the side parking lot, the neighbouring hotel building and its parking ramp, the still missing**.
hillside houses and palms directly behind the roofline, the buildings across Sunset
Boulevard, the entrance recess and door hardware, and any street-level context.
- [ ] Collect street-view frames of both blocks (the owner allows street-view captures for local - [ ] Collect street-view frames of both blocks (the owner allows street-view captures for local
reference): save the street-level facades, corners and opposite frontages into the same reference): save the street-level facades, corners and opposite frontages into the same
`tmp/research/<block>/` folders with a note of the capture viewpoint. `tmp/research/<block>/` folders with a note of the capture viewpoint.
- [ ] Build a local contact sheet per block (`tmp/research/<block>/sheet.jpg`) from the collected - [x] Build a local contact sheet per block: `sheet.jpg` exists for every collected set
frames so the scorecard and the venue review can cite them; keep it in `tmp/` and never (`elcapitan`, `hollywood-block`, `jimmy-kimmel-stage`, `jimmy-kimmel-entrance`,
commit it. `comedy-store`).
- [ ] Record which local frames actually changed a decision in `docs/3d-model-review.md` or the - [ ] Record which local frames actually changed a decision in `docs/3d-model-review.md` or the
venue map doc, with the frame filename, but do not commit the image itself. If a frame is venue map doc, with the frame filename, but do not commit the image itself. If a frame is
promoted to the committed board, it goes through the normal sidecar gate and `CREDITS.md`. promoted to the committed board, it goes through the normal sidecar gate and `CREDITS.md`.
@@ -211,7 +217,7 @@ and never ship a generated or downloaded image without provenance.
`CREDITS.md`. The CC BY-SA `The Comedy Store.jpg` from the old link list was deliberately not `CREDITS.md`. The CC BY-SA `The Comedy Store.jpg` from the old link list was deliberately not
used; the public-domain frames cover the same evidence. (`docs/screens/refs/joke-shop/`.) used; the public-domain frames cover the same evidence. (`docs/screens/refs/joke-shop/`.)
**Removed 2026-11-03:** the committed Comedy Store photo board was replaced by the local-only **Removed 2026-11-03:** the committed Comedy Store photo board was replaced by the local-only
`tmp/research/comedy-store/` research set (owner override; see §3D model re-evaluation → A). `tmp/research/comedy-store/` research set (owner override; see §3D model and local map re-evaluation → A).
- [x] TV Studio: no separate board — the venue is the same El Capitan Entertainment Centre block as - [x] TV Studio: no separate board — the venue is the same El Capitan Entertainment Centre block as
the Hollywood day shift, restaged for a late-night arrival. The Hollywood board covers both the Hollywood day shift, restaged for a late-night arrival. The Hollywood board covers both
venues and the premiere-staging photo is the arrival evidence; the reuse is now stated in venues and the premiere-staging photo is the arrival evidence; the reuse is now stated in
@@ -453,7 +459,7 @@ keeping the frozen `npc_base` bone, tint-slot and gear-attach contract. The proc
the primary path; Quaternius is a reviewed reference and MakeHuman is deferred to a separate local the primary path; Quaternius is a reviewed reference and MakeHuman is deferred to a separate local
development pipeline. development pipeline.
The roster build is deliberately sequenced **after** the 3D model re-evaluation: the new variants The roster build is deliberately sequenced **after** the 3D model and local map re-evaluation: the new variants
must inherit the reviewed face/hand/gear baseline instead of multiplying whatever it finds. must inherit the reviewed face/hand/gear baseline instead of multiplying whatever it finds.
*Skill route: `character-artist`, `retopology`, `rigging`, `uv-workflow`, `materials`, *Skill route: `character-artist`, `retopology`, `rigging`, `uv-workflow`, `materials`,
+1 -1
View File
@@ -4,7 +4,7 @@ This folder holds the project documentation, visual references and generated QA
## Current priorities ## Current priorities
1. [3D model and local map re-evaluation](../TODO.md#3d-model-re-evaluation) — asset scorecard and fixes, plus OpenStreetMap/3D data, licensed reference imagery, photoreal facades, AI-assisted composition and map/Gaussian-splatting evaluation. 1. [3D model and local map re-evaluation](../TODO.md#3d-model-and-local-map-re-evaluation) — asset scorecard and fixes, plus OpenStreetMap/3D data, licensed reference imagery, photoreal facades, AI-assisted composition and map/Gaussian-splatting evaluation.
2. [Character development](../TODO.md#character-development) — crowd, age, build, hair and outfit variety; generator-first, with the frozen NPC contract. 2. [Character development](../TODO.md#character-development) — crowd, age, build, hair and outfit variety; generator-first, with the frozen NPC contract.
3. [0.10.0 release candidate](../TODO.md#milestone-0100--release-candidate) — versioned release hardening after the unversioned development tracks. 3. [0.10.0 release candidate](../TODO.md#milestone-0100--release-candidate) — versioned release hardening after the unversioned development tracks.