stoonie variants — cheaper-than-per-model options

One test/showcase page per strategy. Everything below runs off serve-assets.mjs (:8123) against var/assets/models — no credits spent.

options (cheap → expensive)

optioncost / variantstatuspagewhat it proves
palette + accessory reskin
procedural walker, cosmetic palettes, profession accessories
0 cr live today — default render path reskin-procedural.html 5 faction palettes × ~24 professions × state tints × player colours, zero assets.
masked texture reskin
cloth-only repaint via WEIGHTS-derived UV mask
0 cr the fix for tint-hits-skin — mask from bone weights reskin-mask.html Same mesh+rig+clips, repainted cloth region only; face/hands/hair keep their texels.
GLB material tint
clone mesh, multiply/emissive recipe on fused material
0 cr possible today — same trick as kitbash tintPart reskin-tint.html How far a whole-model tint gets you — and where it breaks (fused material tints skin too).
parametric garments
GarmentSpec → loft → skinned layer re-bound to body skeleton
≈0 cr (JSON spec) SW-1..3 built + verified; SW-4 runtime mount is this page reskin-garments.html One spec dresses every body. Live proof of the SW-4 bone-name rebind + clip drive.
canon bake
canon job image → optical-flow registration → baked atlas TA2
0 cr (1 png / variant) proof passed — butcher on hums-male base reskin-canon.html · reskin-regions.html R render → DIS flow → gated plate → TA2. Ship 1 GLB + N atlas PNGs. regions page = interactive per-zone tint tool (cap/shirt/sleeves/tunic/ trousers/belt/pouch/boots separately) + atlas PNG export.
dressed-mesh rebind
i2d outfit (no rig) → blender-bind → shared 10-clip library
~20 cr (i2d only) deployed ×8 (builder/forester/miner/farmer × m/f) reskin-outfits.html Same skeleton, different mesh — and the raw→bound→final pipeline per job.
per-variant mesh+rig+anims
full Meshy stack per variant
~55 cr + QA wall rejected — batch-5 all-reroll (non-T-pose), 402-blocked rig-own.html · opt-wall.html The expensive path this hub exists to avoid.

proven dead ends (don't retry)

approachevidenceverdict
donor-rig auto-skin on unrigged i2d meshesrig-test.html distance-based skinning can't guess articulation
Meshy WEIGHTS_0 transfer to sibling meshesrig-ab.html (pane D) different topology/bind pose — stretched legs, frozen torsos
cross-rig clip reuserig-wall.html ~70% deform — same joint names ≠ same rig
blender-cleanup on skinned GLBsBUG_LOG 2026-10-12 join/apply/decimate destroys bind space — use glb-opt.mjs

other walls

GLB viewer — every model, live rig-own — each rig × own clips opt-wall — raw vs intake pairs combiner — multi-ref image lab