Record the AI-assisted asset review loop and MakeHuman OBJ transform gotchas in MEMORY.md
This commit is contained in:
1 parent
48a9795248
commit
f0d4b81239
1 file changed
+17
-1
@@ -18,6 +18,13 @@ canonical implemented-features list in `docs/development-status.md`.
|
||||
skull-conforming hair cap derived from the closed head shell, hides the scalp under
|
||||
that cap, and narrows the neck/shoulder body. Default head source stays `face` until
|
||||
the owner reviews the hair/body and the 12-variant rollout starts.
|
||||
- **AI-assisted asset review loop (2026-11-04):** head/face shape decisions use a concept +
|
||||
judge loop — generate a target concept (`generate_textures.generate_image`, Seedream) and use
|
||||
`tools/describe_image.py` as the vision judge, iterating on the mesh until the judge's specific
|
||||
fixes converge. This is what picked the MakeHuman head over the procedural displacement head
|
||||
(`_head_proto` oscillates between "decorated egg" and "spiky wedges" at ~3/5 on the coarse
|
||||
sphere). Review page: `docs/screens/head-review/README.md`; methodology note:
|
||||
`docs/3d-model-review.md` §AI-driven head rework.
|
||||
- **MakeHuman hair/body prototype (2026-11-04):** `npc_casual --head mh` is
|
||||
14,753 tris / 12,822 raw / 12,823 seam-split verts / 14 bones / 9 materials,
|
||||
`inspect` clean. All 12 variants were counted at 14,693–15,987 tris. Hair uses flat
|
||||
@@ -156,6 +163,13 @@ canonical implemented-features list in `docs/development-status.md`.
|
||||
(dark tangent patches) — hair skips the normal map. Generate the cap before deleting
|
||||
the hidden scalp, or the cap inherits the hole. The flatpak sandbox cannot read `/tmp`;
|
||||
helper scripts must live under `$PWD`.
|
||||
- MakeHuman OBJ intake transform (`base.obj`): the source is Y-up, 16.946 units tall. To reach
|
||||
the project Blender Z-up / metres / front -Y space: scale 0.10739, translate y +0.907 (ground
|
||||
the feet), then rotate +90° around X (maps +Y→+Z up and +Z→−Y front). The full-res head carries
|
||||
internal geometry (eyes/teeth/mouth shells) and is non-manifold; voxel-remesh and Catmull-Clark
|
||||
subdivision both fragment it into shards. On the decimated head, weld first
|
||||
(`remove_doubles` ~0.0002) then Laplacian `smooth_vert`; subdivision without the weld splits
|
||||
along the GLB seam vertices.
|
||||
- MPFB gotchas: call `TargetService.bake_targets(body)` before any decimate (shape-key
|
||||
modifier error); add the built-in rig and capture arm weights before applying the MASK
|
||||
modifier, or `build_basemesh_position_info` divides by zero on an emptied bone group;
|
||||
@@ -228,6 +242,8 @@ canonical implemented-features list in `docs/development-status.md`.
|
||||
- Character checks: `python3 tools/blender_assets.py inspect|audit|fit`,
|
||||
`python3 tools/npc_proportions.py`
|
||||
- Docs: `python3 tools/check_docs.py` (every tracked image must be linked from its folder README)
|
||||
- Head/part pipeline: `python3 tools/npc_parts.py build|extract|assemble|inspect|sheet|compare`
|
||||
(Blender subcommands run under flatpak). Head sources: `build_character(head="face"|"proto"|"mh")`.
|
||||
- Reference research: `python3 tools/refcollect.py search <q> --slug <block> --limit N`
|
||||
(local-only), `tools/refboard.py` (Commons), `tools/three_up.py compose/rows`,
|
||||
`tools/scene_concepts.py generate/anchor/realism`
|
||||
@@ -247,6 +263,6 @@ Comedy Store map rebuild are complete. **Priority (2026-11-04, owner):** 1) the
|
||||
model overhaul** (head/face/hands, local part pipeline), 2) finish the MakeHuman character + the
|
||||
3D model and map improvements, 3) ship it all together in the **0.10.0 minor**. The 0.9.7/0.9.8
|
||||
character patches are published; `TODO.md` is the priority source. Test counts as of 2026-11-04:
|
||||
Godot 277/277, Python 162/162, `check_docs` OK.
|
||||
Godot 277/277, Python 167/167, `check_docs` OK.
|
||||
|
||||
<!-- b64: RWFzdGVyIGVnZzogYSByYXJlIHJhZGlvIHRyYW5zbWlzc2lvbiAiwr9Ew7NuZGUgZXN0w6EgbGEgbW90YT8iIGZpcmVzIHZpYSBHYW1lTWFuYWdlci5fbWF5YmVfcmFkaW9fZWFzdGVyX2VnZyAoMi41JSBjaGFuY2UgYWZ0ZXIgYSBzdWNjZXNzZnVsIHJhZGlvIGNhbGwpLiBTdHJpbmcga2V5IHJhZGlvLmVhc3Rlcl9lZ2cgaW4gY29udGVudC9zdHJpbmdzLmVuLmpzb24uIERvIG5vdCByZW1vdmUu -->
|
||||
Reference in new issue
Block a user