diff --git a/TODO.md b/TODO.md index 0755847..2f23821 100644 --- a/TODO.md +++ b/TODO.md @@ -56,11 +56,16 @@ an active track; ADR-0015 (CC0 / CC-BY with attribution) still governs every int ### MPFB / MakeHuman body pipeline -- [ ] Prototype the local MPFB/MakeHuman pipeline outside the repo (retopology, custom rig, - project-owned clothing) and commit only the final CC0-derived assets with provenance. -- [ ] Decide the rig strategy: retarget the MakeHuman mesh to the frozen 13-bone `npc_base` +- [x] Prototype the local pipeline: `tmp/npc-research/makehuman_intake.py` imports the CC0 + `base.obj`, scales to 1.82 m, grounds the feet, triangulates, decimates and exports + `tmp/npc-research/makehuman/makehuman_body.glb` — 3,790 verts / 6,444 tris, bounds + x ±0.53 / y 0–1.82 / z −0.12…+0.35, one neutral material, UVs present, unskinned. The + body (no rig) is the input for the rigging step; the script + mesh stay in `tmp/` (CC0, not + committed). +- [ ] Decide the rig strategy: retarget the MakeHuman body to the frozen 13-bone `npc_base` contract (needs a proportion warp, like the Quaternius no-go), or add a second rig/animation - path behind its own ADR. + path behind its own ADR. **Owner decision** — the body proportions (shoulder ~x 0.53 m, + hip/arm span) do not match the arm-down 13-bone contract, so a retarget needs a warp. - [ ] Re-run `inspect`/`audit`/`fit`/proportions and the 24-NPC budget after each intake; keep the procedural generator as the fallback until a MakeHuman variant ships. diff --git a/docs/npc-model-sourcing.md b/docs/npc-model-sourcing.md index 1614ab9..a881b79 100644 --- a/docs/npc-model-sourcing.md +++ b/docs/npc-model-sourcing.md @@ -199,6 +199,13 @@ not production topology. MakeHuman is therefore **feasible only as a separate local body-shape pipeline**. The boundary for that future work is: +Intake prototype (2026-11-04): `tmp/npc-research/makehuman_intake.py` scales the +CC0 base to 1.82 m, grounds it, triangulates and decimates to **3,790 verts / +6,444 tris**, then exports `tmp/npc-research/makehuman/makehuman_body.glb` (body +only, one neutral material, UVs present, no rig). The body is the input for the +contract-rig/retopology step; the script and mesh stay under `tmp/` and are never +committed. + - MPFB/MakeHuman is installed and run by a contributor, never by CI or the game build. - Generated bodies and intermediate exports stay in `tmp/` (gitignored); the