immersive-web / webxr-input-profiles

WebXR Gamepad assets, source library, and schema
https://immersive-web.github.io/webxr-input-profiles
Other
191 stars 50 forks source link

touch-v3 controller assets have rotation/position offset when using Quest + Link #202

Open hybridherbst opened 2 years ago

hybridherbst commented 2 years ago

Describe the bug

To Reproduce Steps to reproduce the behavior:

  1. Attach Oculus Quest to desktop PC and enable Link
  2. Go to https://immersive-web.github.io/webxr-samples/input-profiles.html
  3. Click on "Enter VR"
  4. Place controller circle on a flat surface
  5. Observe position and rotation error in VR compared to real world
  6. Place controller circles against each other
  7. Observe position and rotation error in VR compared to real world

On Quest in the Oculus browser, orientation is correct; when you repeat the above on Quest with Link disabled you get a pretty perfect match between real world and virtual objects.

Expected behavior Quest + Link controller model should match real-world orientation and position.

Screenshots In VR via Quest + Link - note that there's not only a position but also a rotation offset (both are tilted outwards) image

Oculus Home via Quest + Link controller orientation image

Real-world orientation 1641223773341-01

Version Latest used on https://immersive-web.github.io/webxr-samples/input-profiles.html

Desktop (please complete the following information):

Yonet commented 2 years ago

@cabanier do you know if this is an issue with Oculus controllers?

cabanier commented 2 years ago

@Artyom17 and I have brought this up before as something that WebXR could address.. The controllers need an additional offset to be perfectly placed and we ended up hardcoding that in our code.

cabanier commented 2 years ago

For reference, this is the issue.

hybridherbst commented 2 years ago

Thanks for linking! Just to confirm that I get this right – the Oculus Browser on Quest applies custom offsets so that the controller models actually line up with the controllers? And the "better" fix would be that the offsets are fixed in this repo, and then the offset in Oculus Browser has to be removed?