From cd5e0e0ff7f95de728c9b51e2ac751af798f7675 Mon Sep 17 00:00:00 2001 From: Zwitschi Date: Mon, 2 Nov 2026 19:22:34 +0100 Subject: [PATCH] Record the NPC vertex-cap constraint --- MEMORY.md | 13 +++++++++++-- TODO.md | 5 +++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/MEMORY.md b/MEMORY.md index 3be4059..ceef7cb 100644 --- a/MEMORY.md +++ b/MEMORY.md @@ -6,6 +6,14 @@ Session memory for durable decisions, state, and gotchas. Keep concise, remove o - The visual-alignment path/loader/panel/HUD work and the realism lighting pass are complete and recorded in `DONE.md`; remaining visual items are the realism follow-ups in `TODO.md`. +- **Character vertex cap (2026-11-02):** the current **5,000 glTF vertices per character** limit is + now the binding realism constraint, not a design rule. `npc_firefighter` is at **4,948** after + the hand pass, leaving no room for better eyelids, nose/lip/ear shaping, hand grips or clothing + seams. The cap needs to be raised for the next realism pass; proposed **6,000 vertices** (and + revisit the 6,000-triangle cap in the same change). Update `CHAR_MAX_VERTS`/`CHAR_MAX_TRIS`, the + contract tests, `blender_assets.py audit`, `docs/npc-visual-review.md`, and re-run the 24-NPC and + Web/Compatibility budgets before accepting the new limit. Do not treat 5,000 as a hard product + constraint. - `PLAN.md` is a compact product/design document, not an implementation log. Historical control and v0.3.0 specs were folded into its Presentation and Controls section; put new step-by-step work in `TODO.md`, not the plan. @@ -93,8 +101,9 @@ Session memory for durable decisions, state, and gotchas. Keep concise, remove o - **NPC hand pass (0.9.4, 2026-11-02):** palm radius 0.046 at z .742, scale (.80,.62,.88); fingers are `tube` paths from z .758 to .681–.694 with tip spheres, thumb is a bent tube. The optional hand capture is `capture_npc_baseline.gd -- --view=hand` (8 frames, baseline stays 48). - `npc_firefighter` is now at 4,948 verts (52 below the 5,000 cap); do not add hand/face geometry - without replacing something. Grip offsets remain open. + `npc_firefighter` is now at 4,948 verts (52 below the current 5,000 cap); the cap is provisional + and needs raising for further realism (see the character-vertex-cap decision above). Grip + offsets remain open. - **UI flow smoke (2026-11-02):** `smoke_ui_flows.gd` boots the real scene and exercises inspection allow/deny, normal vs emergency radio, Help filtering, wand allow/deny and review return-to-menu. Keep this smoke in the 0.9.6 diff --git a/TODO.md b/TODO.md index 6b0826a..4241e04 100644 --- a/TODO.md +++ b/TODO.md @@ -82,6 +82,11 @@ and equipment fit. ### Body proportions and silhouette +- [ ] Evaluate raising the per-character glTF vertex cap from 5,000 (and revisit the 6,000-triangle + cap) because `npc_firefighter` is at 4,948 verts after the hand pass. If accepted, update + `CHAR_MAX_VERTS`/`CHAR_MAX_TRIS`, the contract tests, `blender_assets.py audit`, + `docs/npc-visual-review.md`, and re-run the 24-NPC and Web/Compatibility budgets. + - [x] Audit all variants against a shared human proportion guide (head height, shoulder width, torso length, hip width, limb length, foot length) and correct the worst outliers. (`tools/npc_proportions.py` + `docs/npc-proportion-audit.md`: all eight pass; no skeleton or