Files
sporel-module-vagrant-skeleton/animations/walk_fwd_lower.anim.json
Axel Meyer bf5fe12e4c fix(vagrant): walk anim — slow to 0.5x, no leg.scl_y sign flip
User manual-test feedback after iteration-3 hip-stable + leg-rotation
fixes:

1. Animation too fast for actual map traversal → play walk_fwd_lower
   and walk_upper with speed=0.5 (effective 1.6s cycle, was 0.8s).
2. Second half visually broken → was substrate's sign-flip trick where
   leg.scl_y goes +1 (opposite of rest -1) and foot.pos.y flips
   negative. Cascade foot.world.scl_y = +1 * -1 = -1 → foot rendered
   Y-flipped. User: 'die füße ... darf hier die skalierung nicht negativ
   werden'.

   New cycle: each half extends ONE leg (scl_y=-1 matching rest) while
   the other stays at scl_y=0 (collapsed/invisible). foot.world.scl_y
   never goes negative — only [0, +1]. Alternating-leg gait. Substrate
   first-half preserved verbatim; second-half mirrors with role swap.
2026-05-18 22:13:56 +02:00

29 lines
856 B
JSON

{
"id": "walk_fwd_lower",
"track": "lower",
"duration": 0.8,
"loop": true,
"keyframes": [
{ "t": 0.0,
"leg_l": {"scl": [-1, 0]}, "leg_r": {"scl": [ 1, 0]},
"foot_l": {"pos": [0, 0]}, "foot_r": {"pos": [0, 0]}
},
{ "t": 0.2,
"leg_l": {"scl": [-1, -1]}, "leg_r": {"scl": [ 1, 0]},
"foot_l": {"pos": [0, 25]}, "foot_r": {"pos": [0, 0]}
},
{ "t": 0.4,
"leg_l": {"scl": [-1, 0]}, "leg_r": {"scl": [ 1, 0]},
"foot_l": {"pos": [0, 0]}, "foot_r": {"pos": [0, 0]}
},
{ "t": 0.6,
"leg_l": {"scl": [-1, 0]}, "leg_r": {"scl": [ 1, -1]},
"foot_l": {"pos": [0, 0]}, "foot_r": {"pos": [0, 25]}
},
{ "t": 0.8,
"leg_l": {"scl": [-1, 0]}, "leg_r": {"scl": [ 1, 0]},
"foot_l": {"pos": [0, 0]}, "foot_r": {"pos": [0, 0]}
}
]
}