You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(render): stop spline overshoot and ground floor-planted hands/feet
Two root causes behind several movement artifacts, fixed generically so
every movement benefits rather than patching individual examples.
1. Squad spline overshoot at loop-boundary anchors
The squad control-point formula was fed a clamped neighbour at the
start-pose and reset keyframes, yielding a backward-biased tangent
instead of a rest tangent. Large rest-to-rest moves flung the joint
the wrong way then snapped back:
- biceps curl: forearm sat still ~0.2s then snapped 135 deg in one
frame ("curl happens suddenly")
- box squat: the "Sit back" start overshoot threw the torso forward
off the chair ("goes forward / looks stupid")
Fix: mark the structural anchors (start + reset) as rest points so
their segments collapse to a clean slerp. Smooths transitions for all
movements. Adds a red/green regression test.
2. Contact solving missed floor-planted hands/feet
- plank feet floated: ground-lock pivoted the body about the feet to
plant the forearms without grounding the feet first, so the pivot
sat wherever the toes happened to be. Fix: drop the feet to the
floor before pivoting so both ends land.
- plank / mountain-climber hands clawed: the flatten-palm / flat-
fingers logic only recognised hands planted via reach/pin floor. A
high plank uses ground-lock: hands, so those hands were treated as
idle and given the inward resting hook. Fix: treat ground-locked
hands as floor-planted (palms down, fingers flat).
Verified: 248 tests pass (incl. eval grounding invariants), typecheck
clean, and the moves confirmed in the playground.
0 commit comments