From cd7697cba4f229a104bf80aeec762545b75203bc Mon Sep 17 00:00:00 2001 From: Zwitschi Date: Wed, 4 Nov 2026 19:36:52 +0100 Subject: [PATCH] Polish the MPFB prototype shoes, cuffs and shirt fit --- MEMORY.md | 25 ++++++++++++++----------- TODO.md | 26 ++++++++++++++++---------- docs/npc-model-sourcing.md | 27 +++++++++++++++------------ 3 files changed, 45 insertions(+), 33 deletions(-) diff --git a/MEMORY.md b/MEMORY.md index d70a85c..f6f8102 100644 --- a/MEMORY.md +++ b/MEMORY.md @@ -33,19 +33,22 @@ canonical implemented-features list in `docs/development-status.md`. points/weights, removes the rig, applies the helper MASK, scales to 1.81 m, retargets the A-pose arms to the contract wrist, cuts the neck at 1.505, decimates, bisects the clothing boundaries, paints the five slots, adds a short neck flare, project hands, rounded shoes and cuffs, the - accepted head and the 14-bone contract armature. Current output: **15,213 tris / 13,391 glTF - verts / 13,398 seam-split verts / 1.810 m / 14 bones / 10 materials**; `inspect` clean and feet - grounded. The neck is a radial cut of the decimated column bridged by a four-ring, 20-segment - lathe (lower rings painted cloth, reads as a crew neck); the ankles are hidden by a bevelled - 0.12 m shoe shell, 0.13 × 0.32 m sole and a 0.08 m pant cuff. A light smoothing pass on the closed - thigh/hip region softens the decimated silhouette. Earlier torus collar, cloth cylinder collar, - skin neck-blend sphere and destructive neck `smooth_vert` pass failed: the shells read as a + accepted head and the 14-bone contract armature. Current output: **15,317 tris / 13,507 glTF + verts / 13,513 seam-split verts / 1.810 m / 14 bones / 10 materials**; `inspect` clean and feet + grounded. The torso is inflated radially by 8% between z 0.84 and 1.40 to loosen the shirt. The + neck is a radial cut of the decimated column bridged by a four-ring, 20-segment lathe (lower + rings painted cloth, reads as a crew neck); the ankles are hidden by a bevelled 0.11 m shoe + shell, an inset 0.111 × 0.286 m sole, a tongue and a 0.08 m pant cuff. Sleeve cuffs use the + `cloth` slot and the `accessory` slot is carried by the sole. A light smoothing pass on the + closed thigh/hip region softens the decimated silhouette. Earlier torus collar, cloth cylinder + collar, skin neck-blend sphere and destructive neck `smooth_vert` pass failed: the shells read as a brace, shelf or donut, and vertex smoothing tore the open collar boundary into a dark hole. An untucked shirt-hem band at the hips also failed: it read as a hanging white flap at the crotch. - Remaining polish: V-shaped shirt hem at the crotch, skin-tight shirt, angular thigh facets; a - proper shirt shell is the fix. The prototype uses flat slot colours because the one-shot MPFB UV - unwrap does not match the per-slot NPC atlases. Renders: - `tmp/npc-parts/mpfb_proto/renders66/`; body-only: `body_only.glb`. + Protruding flat sole plates read as skates/bricks and were replaced by an inset sole under a + rounded shell; laces were dropped for triangle budget. Remaining polish: V-shaped shirt hem at + the crotch, partly loosened shirt, angular thigh facets; a proper shirt shell is the fix. The + prototype uses flat slot colours because the one-shot MPFB UV unwrap does not match the per-slot + NPC atlases. Renders: `tmp/npc-parts/mpfb_proto/renders74/`; body-only: `body_only.glb`. - **Project agent skills (2026-11-03):** two tracked skills live in `.agents/skills/`: `gig-line-blender-asset-contract` and `gig-line-release-qa`. They are guidance only, add no runtime dependency and are referenced from `tools/README.md`. The third-party diff --git a/TODO.md b/TODO.md index c587b2c..2c9a58f 100644 --- a/TODO.md +++ b/TODO.md @@ -203,8 +203,9 @@ owner reviews the silhouette and a production integration decision is recorded. apply the helper MASK, scale to 1.81 m, retarget the A-pose arms to the contract wrist (`x=±0.27`, `z=0.78`), cut the neck at 1.505, decimate, bisect the clothing boundaries, paint the five slots, add a short neck flare, project hands, rounded shoe shells, cuffs, the - accepted head and the 14-bone armature. Current output: **15,213 tris / 13,391 glTF verts / - 13,398 seam-split verts / 1.810 m / 14 bones / 10 materials**; `inspect` clean, feet grounded. + accepted head and the 14-bone armature. Current output: **15,317 tris / 13,507 glTF verts / + 13,513 seam-split verts / 1.810 m / 14 bones / 10 materials**; `inspect` clean, feet grounded. + The torso is inflated radially by 8% between z 0.84 and 1.40 so the shirt is less skin-tight. - [x] Replace the spiky decimated MPFB hands with the project palm/finger primitives, straighten the splayed MPFB feet so the shoes point forward, and use rounded shoe shells + cuffs instead of flat blocks. Use flat slot colours in the prototype because the one-shot MPFB UV unwrap does @@ -217,16 +218,21 @@ owner reviews the silhouette and a production integration decision is recorded. - [x] Reject destructive vertex smoothing at the neck: a `smooth_vert` pass moved the open body boundary away from the neck cone, opening a dark hole. The lathe gives smooth shading without moving the collar boundary. -- [x] Shrink the shoes and seat the ankles: shoe shell 0.12 × 0.30 × 0.12 m, sole 0.13 × 0.32 m, - shoe centre x=0.17, with a 0.08 m pant cuff (r 0.055/0.061) bridging leg and shoe. -- [x] Replace the bulbous toe/heel spheres with a single bevelled shoe shell (bevel 0.042, 3 - segments) and add one light smoothing pass to the closed thigh/hip region. +- [x] Shrink the shoes and seat the ankles: shoe shell 0.12 × 0.30 × 0.11 m, an inset 0.111 × + 0.286 m black sole, a tongue and shoe centre x=0.17, with a 0.08 m pant cuff (r 0.055/0.061) + bridging leg and shoe. The sleeve cuffs now use the `cloth` slot and the `accessory` slot is + carried by the sole, so the cuffs read as sleeve ends instead of metal bands. +- [x] Replace the bulbous toe/heel spheres with a single bevelled shoe shell (bevel 0.032, 2 + segments) plus tongue and inset sole, and add one light smoothing pass to the closed + thigh/hip region. Protruding flat sole plates read as skates or bricks; laces were dropped + for triangle budget after they proved too small to read. - [x] Reject the untucked shirt-hem band: both the 0.09 m and 0.12 m cloth cylinders read as a hanging white flap at the crotch. The V hem needs a proper clothing shell, not a band. -- [ ] Owner reviews the updated MPFB body renders (`tmp/npc-parts/mpfb_proto/renders66/`). - Remaining known defects: white shirt hem still forms a V at the crotch, the shirt reads - skin-tight, and the 2k-tri body budget leaves some angular thigh facets. A shirt shell is - the proper fix for the first two; these are polish, not blockers for the body direction. +- [ ] Owner reviews the updated MPFB body renders (`tmp/npc-parts/mpfb_proto/renders74/`). + Remaining known defects: white shirt hem still forms a V at the crotch, the shirt is only + partly loosened by the 8% torso inflation, and the 2k-tri body budget leaves some angular + thigh facets. A shirt shell is the proper fix for the first two; these are polish, not + blockers for the body direction. - [ ] Fix the low-budget seams before any rollout: weld the torso/hip/arm components after the bisects, protect the hip/knee loops during decimation (or rebalance head/body triangles). - [ ] Record the production integration decision: either bake the approved MPFB body to a committed diff --git a/docs/npc-model-sourcing.md b/docs/npc-model-sourcing.md index 2d5a1ab..135ab59 100644 --- a/docs/npc-model-sourcing.md +++ b/docs/npc-model-sourcing.md @@ -55,18 +55,21 @@ The MakeHuman body should reuse the approved local head/hand parts rather than f a second face implementation. The current local MPFB full-body prototype (`tmp/npc-research/build_mpfb_npc.py`) assembles the -accepted head on an MPFB 2.0.18 body at **15,213 / 16,000 tris**, 1.810 m, 14 bones and 10 -materials, with project hands, bevelled shoe shells, pant cuffs, accessory cuffs and flat slot -colours. It is a review candidate, not a shipped asset. The neck is a radial cut of the decimated -column bridged by a four-ring, 20-segment lathe (lower rings painted cloth, reading as a crew neck); -the ankles are hidden by 0.12 m shoe shells and 0.08 m pant cuffs, and a light smoothing pass -softens the closed thigh/hip region. Remaining polish: a V-shaped shirt hem at the crotch, a -skin-tight shirt and angular thigh facets; a proper shirt shell is the fix. A torus collar, cloth -cylinder collar, skin neck-blend sphere, destructive vertex-smoothing pass and untucked shirt-hem -band were tried and removed because they read as a brace, shelf, donut or hanging flap, or tore a -hole at the collar. The production integration decision (bake a committed -source GLB or keep the procedural body) and the owner review are tracked in `TODO.md`; MPFB itself -must not become a CI/build dependency. +accepted head on an MPFB 2.0.18 body at **15,317 / 16,000 tris**, 1.810 m, 14 bones and 10 +materials, with project hands, bevelled shoe shells with inset soles and tongues, pant cuffs, +cloth sleeve cuffs and flat slot colours. The torso is radially inflated by 8% between z 0.84 and +1.40 to loosen the shirt. It is a review candidate, not a shipped asset. The neck is a radial cut +of the decimated column bridged by a four-ring, 20-segment lathe (lower rings painted cloth, +reading as a crew neck); the ankles are hidden by 0.11 m shoe shells and 0.08 m pant cuffs, and a +light smoothing pass softens the closed thigh/hip region. Remaining polish: a V-shaped shirt hem +at the crotch, a partly loosened shirt and angular thigh facets; a proper shirt shell is the fix. +A torus collar, cloth cylinder collar, skin neck-blend sphere, destructive vertex-smoothing pass +and untucked shirt-hem band were tried and removed because they read as a brace, shelf, donut or +hanging flap, or tore a hole at the collar. Protruding flat sole plates read as skates or bricks, +so the shoe detail is an inset sole and tongue under a rounded shell; laces were dropped for +triangle budget. The production integration decision (bake a committed source GLB or keep the +procedural body) and the owner review are tracked in `TODO.md`; MPFB itself must not become a +CI/build dependency. ## Provenance rules