vrOS v0.16.4 Patch Notes
Bug Fixes
- Fixed playspace drag jitter regression introduced in v0.16.0. The drag now tracks your hand smoothly again instead of vibrating and drifting the longer you held the grip. Three independent issues compounded into the shake: an algorithmic feedback loop where the just-applied world translation re-entered the next frame's delta, a pose-source switch that started feeding compositor-predicted (vsync-snapshotted) poses into input-delta math, and a SteamVR/Quest Link runtime quirk where polling IVRSystem with zero prediction returned bimodal pose snapshots that alternated between two values frame-to-frame. Anchor math now lives in standing space, drag reads a separate non-predicted tracking pose, and pose calls pass one HMD frame as the prediction target so the runtime extrapolates to a deterministic forward point each tick. Two new tunables for tail-end smoothing: VROS_DRAG_FILTER_ALPHA=<0..1> adjusts the EMA strength, VROS_DRAG_FILTER=off bypasses it entirely.
- Added click-edge instrumentation under RUST_LOG=vros_vr::input::clicks=debug (per-hand analog trigger value, digital select_click bit, prior-frame state, and a short rolling history at every press/release transition) to support the parallel investigation into Quest 3 Touch trigger sensitivity.
