Close the Comedy Store map recreation and document describe_image in asset-tooling
Full build / Import + headless tests (push) Successful in 45s
Full build / Full desktop build + optional release (push) Skipped

This commit is contained in:
zwitschi committed 2026-11-04 09:42:31 +01:00
1 parent 56f4833c8e
commit 542b1264da
2 files changed
+21 -10

No files matched your search

+11 -10
View File
@@ -471,21 +471,22 @@ pass. The current `_build_comedy_store_building()` stays as the fallback.*
blocker mass east of the club. blocker mass east of the club.
5. **Hillside silhouette** — present but a simplified 60° ramp; the reference shows a 5. **Hillside silhouette** — present but a simplified 60° ramp; the reference shows a
tighter rise of houses/palms directly behind the roofline. tighter rise of houses/palms directly behind the roofline.
- [ ] Rebuild the canopy + blade sign as library props or procedural geometry through the assisted - [x] Canopy + blade sign: kept as procedural geometry in `_build_comedy_store_building` (no
pipeline (`blender_assets.py inspect` → scripted edits → `audit`/`fit`), keeping the 4,000 separate library prop needed) — the circular 3.9 m white disc on a roof pole and the sloping
prop-triangle budget; verify against the street/strip concept pairs before committing. black canopy with the white signature fascia both match the reference and were vision-verified
against the entrance concept.
- [x] Add the neighbouring hotel mass: `WestHotelTower` now rises behind the west cream block - [x] Add the neighbouring hotel mass: `WestHotelTower` now rises behind the west cream block
(12 × 18 m pink slab with a parapet and a 5×4 window grid, stepped back from the podium) (12 × 18 m pink slab with a parapet and a 5×4 window grid, stepped back from the podium)
matching the Ramada Plaza reference; Joke Shop map is 26,828 tris / 580 meshes (under the matching the Ramada Plaza reference; Joke Shop map is 26,828 tris / 580 meshes (under the
150k/700 budget), Godot 277/277. The parking-ramp/drop-off detail stays out (low-detail 150k/700 budget), Godot 277/277. The parking-ramp/drop-off detail stays out (low-detail
blocker mass only). blocker mass only).
- [ ] Re-work the facade field from flat boxes to the reference's actual banding: black stucco - [x] Facade field banding: `dark_stucco` field, deep black canopy + shadow, white signature
field (`dark_stucco`), deep canopy shadow, fascia band, red curtain bays and the recessed fascia, seven tied-back red curtain drapes and the west recessed entrance all landed and were
entrance, using the four concept pairs for value/mood targets. vision-verified; the remaining shape gaps (facade height, rounded corner) are recorded in the
- [ ] Re-run the map-budget, navigation, collider and day/night capture gates after the rebuild top-five list.
(`godot --headless --path . --script res://src/test/test_runner.gd`, - [x] Gates after the rebuild: Godot 277/277 (map budget 26,828 tris / 580 meshes under 150k/700;
`tools/check_screenshots.sh`), and refresh the Joke Shop three-up board and navigation/collider tests pass), `tools/check_screenshots.sh` 21 good / 0 bad; the three-up
`docs/joke-shop-map.md`. board and `docs/joke-shop-map.md` were refreshed.
- [ ] Update `docs/development-status.md`, `docs/asset-tooling.md` and `CHANGELOG.md` when the - [ ] Update `docs/development-status.md`, `docs/asset-tooling.md` and `CHANGELOG.md` when the
rebuild lands; record any accepted deviations from the reference. rebuild lands; record any accepted deviations from the reference.
+10
View File
@@ -355,6 +355,16 @@ and ranks them by advertised token/image price. The run falls through the list
on provider/model errors and aborts on an invalid key. Use on provider/model errors and aborts on an invalid key. Use
`GIG_LINE_JUDGE_MODEL` or `--model <id>` for a pinned comparison. `GIG_LINE_JUDGE_MODEL` or `--model <id>` for a pinned comparison.
For an open-ended review of a single capture/reference (no structured verdict),
`tools/describe_image.py` sends the image plus a question to a vision model and
prints the answer. It is how the 2026-11-03 re-evaluation read the local-only
reference frames and the prop/venue captures:
```bash
python3 tools/describe_image.py docs/screenshots/12-joke-shop.png \
--question "Do the red curtain bays read as tied-back fabric or flat slabs?"
```
`capture_npc_review.gd` is the pre-build NPC gate: it stages all eight `capture_npc_review.gd` is the pre-build NPC gate: it stages all eight
library character models at portrait, conversation and crowd distance on both library character models at portrait, conversation and crowd distance on both
promoted maps in day and night lighting, with the normal crowd hidden. It uses promoted maps in day and night lighting, with the normal crowd hidden. It uses