Skip to content

fix(cursor-depth): hybrid keeps the line of sight — release 1.37.1 - #145

Merged
dfattal merged 1 commit into
mainfrom
fix/cursor-hybrid-line
Oct 7, 2026
Merged

dfattal merged 1 commit into
mainfrom
fix/cursor-hybrid-line

Conversation

@dfattal

@dfattal dfattal commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

In 1.37.0's hybrid anchor, when the depth under a still pointer changed, the sprite rose along the display normal. For an off-axis viewer that pulls it off the click point (27 px in the runtime's off-axis capture). It now keeps the line of sight from the last pointer move and sits on that line at the current depth:

  • a head move leaves it fixed, so it parallaxes;
  • a depth change slides it along the line, so it stays on the click point;
  • it is continuous at the moment the pointer stops.

This is the same rule the runtime adopts (DisplayXR/displayxr-runtime#1847).

Evidence:

  • npm test: 849 pass. Two new tests: an off-axis depth change, where the sprite stays exactly on the click point while world mode drifts more than 5 mm, and a head moving nearer, where the sprite keeps the depth the content needs.
  • Three deliberately broken versions are all caught: dropping the distance ratio, using the current eye instead of the anchor-time eye, and a bad stored distance.
  • test:e2e:cursor: 6/6 pass (both engines, model and splat; screen still slides, hybrid and world stay fixed).

Bumps to 1.37.1. After merge, tag sdk-v1.37.1.

🤖 Generated with Claude Code

…e foot)

A depth change under a still pointer lifted the sprite along the display
normal, pulling it off the click point for an off-axis viewer (found by the
runtime agent's off-axis capture: 27 px). Keep E0->S0 from the last pointer
move and sit on it at the current depth. Head moves: fixed (parallax). Depth
changes: along the line (stays on the click point). Continuous at the stop.
Release 1.37.1.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@dfattal
dfattal merged commit 77d4a5e into main Oct 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant