Polish the MPFB prototype shoes, cuffs and shirt fit

This commit is contained in:
zwitschi committed 2026-11-04 19:36:52 +01:00
1 parent d2f773c7ad
commit cd7697cba4
3 files changed
+45 -33

No files matched your search

+14 -11
View File
@@ -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
+16 -10
View File
@@ -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
+15 -12
View File
@@ -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