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
The root-translation capability that step-ups / dips / pull-ups needed. A plain
"lift the body" scalar wouldn't do them — those need a CONTACT to stay pinned
(foot on box, hands on bar) while the body moves relative to it. So this adds a
`pin: <effector> <anchor>` directive: the renderer translates the whole figure so
the pinned effector sits on its anchor, letting the body hang, climb, or lower as
the joints work.
Engine:
- IR: Phase.pins threaded through types/parser/schema/clamp/timeline (mirrors
reaches). New `pin: <effector> <anchor>` step-child.
- Renderer: applyPins() translates the root so pinned effectors meet anchors;
runs after ground-lock, before reach-IK. Also fixed a latent root-state issue —
the frame loop now resets the root to its grounded base each frame so
ground-lock/pin/reach never accumulate (and the body returns to base when a pin
ends).
- props: raised the pull-up bar to 2.3 m (above standing reach) with support
posts, so a pinned grip genuinely hangs the body below it.
Movements (all verified against the real rig): pull-up (pelvis climbs ~0.34 m,
feet leave the floor), step-up (body rises ~0.32 m onto the box), triceps-dips
(hips lower), and dead-hang / hanging-knee-raise now truly suspended.
Docs + vocab: `pin` registered in SPEC, llm-authoring, vocab; coverage-gap updated.
Tests: pin parsing + a pull-up rise assertion; 140 passing, build green.
Claude-Session: https://claude.ai/code/session_018WCktDrKYZpJjCb2apbqWp
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments