diff --git a/THREADS.md b/THREADS.md index 50a0885..6ed2eea 100644 --- a/THREADS.md +++ b/THREADS.md @@ -439,3 +439,12 @@ Format: `[lane letter] YYYY-MM-DD — note` `./models/…`) — the ped never loaded under `server.py`; it does now, verified in dev_player.html. Selftest on merged main: **121 pass / 0 skip / 0 fail** (E's suite lit up as promised). launch.json now runs `--port 8809` (8801 was held by another session). Next work: SPRINT2.md. + +[I] 2026-07-16 — **M3 CLIP PACK LANDED — the mixamo wishlist is fetched and baked.** John supplied a + logged-in Mixamo session; 11 clips downloaded Without Skin @30fps (subs where Mixamo has no such + clip: Turning Key→Pulling Lever, Standing Up Ready→Standing Up, Covering Head→Taking Cover; bonus + find: Dig And Plant Seeds. Hammering/Sweeping/Bracing don't exist — skipped). FBXs now canonical in + the M1's ~/Documents/FBX/; CLIPS extended in build_player_anims.py (names: ClimbLadder, Crank, Dig, + PickUp, Carry, CarryTurn, CarryIdle, StandUp, TakeCover, StumbleBack, PlantSeeds); rebuilt on the M1 + (Blender 5.0.1, 17 NLA tracks, 2.3 MB) and committed. Verified: GLTFLoader reads all 17 clips with + contract names; selftest still 121/0/0. Lane D: your M3 verbs are on disk — wire when ready. diff --git a/tools/character/build_player_anims.py b/tools/character/build_player_anims.py index 64227bd..be10008 100644 --- a/tools/character/build_player_anims.py +++ b/tools/character/build_player_anims.py @@ -46,6 +46,21 @@ CLIPS = [ ("Falling", f"{FBX}/Falling.fbx"), # limb flail; player.js pitches the root itself ("CrouchToStand", f"{FBX}/Crouch To Stand.fbx"), ("Reaction", f"{FBX}/Reaction.fbx"), # stagger on a debris glance + # --- M3 verbs, fetched from Mixamo 2026-07-16 (see tools/character/mixamo_wishlist.txt). + # Substitutions where Mixamo has no such clip: Turning Key → Pulling Lever, + # Standing Up Ready → Standing Up, Covering Head → Taking Cover. + # Hammering / Sweeping Floor / Bracing don't exist on Mixamo — skipped. + ("ClimbLadder", f"{FBX}/Climbing Ladder.fbx"), + ("Crank", f"{FBX}/Pulling Lever.fbx"), # turnbuckle work + ("Dig", f"{FBX}/Digging.fbx"), + ("PickUp", f"{FBX}/Picking Up Object.fbx"), + ("Carry", f"{FBX}/Carrying.fbx"), + ("CarryTurn", f"{FBX}/Carrying Turn.fbx"), + ("CarryIdle", f"{FBX}/Box Idle.fbx"), + ("StandUp", f"{FBX}/Standing Up.fbx"), + ("TakeCover", f"{FBX}/Taking Cover.fbx"), # hail/debris shelter + ("StumbleBack", f"{FBX}/Stumble Backwards.fbx"), + ("PlantSeeds", f"{FBX}/Dig And Plant Seeds.fbx"),# garden repair verb ] PREFIX_RE = re.compile(r"mixamorig\d*:") diff --git a/tools/character/mixamo_wishlist.txt b/tools/character/mixamo_wishlist.txt index 50f3625..f76f064 100644 --- a/tools/character/mixamo_wishlist.txt +++ b/tools/character/mixamo_wishlist.txt @@ -32,3 +32,12 @@ Standing Up Ready Covering Head Bracing Stumble Backwards + +## --- FETCH LOG 2026-07-16 (fetched via browser session on m3ultra, John's Mixamo login) --- +# Landed in ~/Documents/FBX/ on the M1 and baked into player_anims.glb (17 clips total): +# Climbing Ladder ✓ · Pulling Lever ✓ (sub for Turning Key — no such clip on Mixamo) +# Digging ✓ · Dig And Plant Seeds ✓ (bonus, garden verb) · Picking Up Object ✓ +# Carrying ✓ + Carrying Turn ✓ + Box Idle ✓ (the Carrying Box family) +# Standing Up ✓ (sub for Standing Up Ready) · Taking Cover ✓ (sub for Covering Head) +# Stumble Backwards ✓ +# Genuinely absent from Mixamo, skipped: Hammering · Sweeping Floor · Bracing diff --git a/web/world/models/player_anims.glb b/web/world/models/player_anims.glb index 3528730..8392987 100644 Binary files a/web/world/models/player_anims.glb and b/web/world/models/player_anims.glb differ