Pose sync: send the ease-in time with pose loads / sequence steps so other viewers blend instead of jumping #531

Closed
opened 2026-10-08 02:24:27 +00:00 by sky_line · 0 comments
Owner

Pose sync (#500) sends a pose change as one delta/full and receivers apply it instantly. Locally, loading a pose or stepping a sequence eases in (per-pose ease-in time), but other Slipstream users see the pose jump.

Fix

  • Add the blend time to pose lines that come from a pose load / sequence step (e.g. an optional e<ms> field in the P1 header, or a new record flag), version-safe: older receivers ignore it.
  • Receivers blend from the avatar's current pose to the received rotations over that time (same smooth curve the studio uses: slerp with ease-in-out), per bone; a new line arriving mid-blend restarts from the current blended pose.
  • Dial edits keep blend 0 (immediate), as now.
  • No extra traffic: still one line per step.
  • Also smooth ordinary deltas lightly on receive (e.g. ~150 ms) so 2/s updates don't look steppy, unless the sender says 0.

Done when

  • A looping sequence on one Slipstream account looks the same (eased) on another.
  • No extra messages per step; older Pose Studio builds still apply the poses (just without the blend).
Pose sync (#500) sends a pose change as one delta/full and receivers apply it instantly. Locally, loading a pose or stepping a sequence eases in (per-pose ease-in time), but other Slipstream users see the pose **jump**. ## Fix - Add the blend time to pose lines that come from a pose load / sequence step (e.g. an optional `e<ms>` field in the P1 header, or a new record flag), version-safe: older receivers ignore it. - Receivers blend from the avatar's current pose to the received rotations over that time (same smooth curve the studio uses: slerp with ease-in-out), per bone; a new line arriving mid-blend restarts from the current blended pose. - Dial edits keep blend 0 (immediate), as now. - No extra traffic: still one line per step. - Also smooth ordinary deltas lightly on receive (e.g. ~150 ms) so 2/s updates don't look steppy, unless the sender says 0. ## Done when - A looping sequence on one Slipstream account looks the same (eased) on another. - No extra messages per step; older Pose Studio builds still apply the poses (just without the blend).
sky_line added this to the Slipstream project 2026-10-08 02:24:27 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sky_line/Slipstream#531
No description provided.