Files
WoWee/include/rendering/animation_controller.hpp
Kelsi 22a5a55477 fix(mount): stop a carried rider trailing behind its mount
Mounted on a moving boat, the character rendered behind the direction of travel
and off to one side of the mount it was supposed to be sitting on.

The rider is placed at the mount's seat attachment, exponentially smoothed at
14 Hz to damp the jitter of a bone-driven seat while sitting still. The branch
that snaps instead of smoothing keys off `moving`, which reports movement
*input* — and a player standing on a boat presses nothing while the world
carries them at the ship's speed. So the filter engaged and trailed the rider by
its own time constant: about two yards at ferry speed, swinging out to one side
as the hull turned, which is exactly the offset described.

Ask whether the seat is moving in the world instead of whether the player asked
it to. A seat that shifts more than a twentieth of a yard between frames is
being carried; standing on solid ground moves it by a fraction of that, while a
ferry moves it nearly half a yard in a single frame, so the two are an order of
magnitude apart. This covers anything that carries a rider — ships, elevators, a
moving platform — without naming any of them.

The taxi branch above already snapped and is unchanged.
2026-07-31 21:38:55 -07:00

14 KiB