CHR-WUKONG-20261005-02
Wukong rig rework: feet, scarf, antenna from owner reference videos
Evidence
From logs/evidence/CHR-WUKONG-20261005-02/. Click a thumbnail for the full image.
Clips (2)
Logs and data (2)
glb_report.json · 1 kB · open
{
"file": "art/3d/wukong/demo/wukong.glb",
"sizeMB": 4.16,
"verts": 49006,
"tris": 53353,
"joints": 173,
"deformBonesWeighted": 135,
"springChains": 16,
"springBones": 83,
"maxInfluences": 4,
"texture": {
"w": 2048,
"h": 2048,
"format": "jpeg"
},
"heightM": 1.949,
"animations": [
{
"name": "idle",
"duration": 3,
"channels": 132
},
{
"name": "run",
"duration": 0.7,
"channels": 132
},
{
"name": "spin_jump",
"duration": 1.2,
"channels": 132
},
{
"name": "walk",
"duration": 1.1,
"channels": 132
}
],
"pass": true,
"fails": [],
…rig_validation.json · 4 kB · open
{
"pass_": true,
"checks": [
{
"name": "Zoen skeleton: prefix-free Mixamo names, root and sockets present",
"ok": true,
"detail": ""
},
{
"name": "Hips hangs under root",
"ok": true,
"detail": ""
},
{
"name": "16 spring chains, all bones exist, every chain ends in a non-deforming tip",
"ok": true,
"detail": ""
},
{
"name": "83 deforming spring bones (4 antenna x 8, scarf 3 x 8, 9 sashes)",
"ok": true,
"detail": "83"
},
{
"name": "every vertex weighted, weights sum to 1",
"ok": true,
"detail": "unweighted 0, not normalised 0"
},
{
"name": "<= 4 influences per vertex (Zoen budget)",
"ok": true,
"detail": "0"
},
{
"name": "no weights on non-deforming bones (tips, sockets, root)",
"ok": true,
"detail": "0"
},
{
"name": "UVs inside 0..1",
…Tests
$ /Users/king/Applications/Blender.app/Contents/MacOS/Blender -b art/3d/wukong/build/04_animated.blend -P tools/blender/wukong/wukong_validate_rig.py -- logs/evidence/CHR-WUKONG-20261005-02/rig_validation.json$ /Users/king/Applications/Blender.app/Contents/MacOS/Blender -b art/3d/wukong/build/04_animated.blend -P tools/blender/wukong/wukong_validate_rig.py -- logs/evidence/CHR-WUKONG-20261005-02/rig_validation.json$ node tools/blender/wukong/validate_glb.mjs art/3d/wukong/demo/wukong.glb logs/evidence/CHR-WUKONG-20261005-02/glb_report.json$ node tools/blender/wukong/demo_test.mjs$ node tools/blender/wukong/demo_test.mjs$ /Users/king/Applications/Blender.app/Contents/MacOS/Blender -b art/3d/wukong/build/04_animated.blend -P tools/blender/wukong/wukong_validate_rig.py -- logs/evidence/CHR-WUKONG-20261005-02/rig_validation.json$ node tools/blender/wukong/validate_glb.mjs art/3d/wukong/demo/wukong.glb logs/evidence/CHR-WUKONG-20261005-02/glb_report.json$ node tools/blender/wukong/demo_test.mjs$ node tools/blender/wukong/demo_test.mjs$ node tools/blender/wukong/demo_test.mjsNotes
2026-10-05 03:25 UTC · Boots reweighted (shin->foot 2-16 cm band, foot->toe at the ball); walk/run rebuilt with 2-bone IK, planted feet, heel/ball pivots (walk 1.1 s @1.25 m/s, run 0.7 s @4.2 m/s, run head bounce 6 cm, was 15 cm); chain weights quadratic B-spline + anchor fade; scarf 3x8; spring solver: relative damping + air drag + angle limits (world-space damping was what flung the chains). Demo walk speed 1.25. demo_test motion checks now measure movement from the settled idle state (old 'tip deviation > 1.0 m' rewarded flinging). Evidence: wukong_rework_vs_reference.mp4, wukong_rework_views.mp4. Source zip specs/assets/3d/wukong/fantasy+warrior+3d+model.zip is byte-identical to art/3d/wukong/source/wukong_tripo_rigged.fbx (md5 9d654d99), so no new input.
