-
Notifications
You must be signed in to change notification settings - Fork 127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add alternative LOSAngularOffsetHandRayPoseSource #625
Conversation
* Adds an alternative line of sight (LOS) with angular offset hand ray pose source. * Adds a ctor to StablizedRay providing distinct values for position and direction half life.
@whebertML , please hold off on merging until someone at MS tests on HL2. Thank you |
@AMollis Sounds good. 👍 Curious how it behaves on HL2. Similar behavior on ML2 and Quest (2/3). |
@whebertML Thanks - I'll check it out today. |
It worked OK on HL2 after an initial problem when I didn't set the 'hand' field on the two pose sources. If you don't set the hand, you get errors if you try to run it in editor and the hand ray shoots out of the side of your hand on device. After configuring the pose sources correctly and rebuilding, everything worked on HL2. |
@AMollis @shaynie Would something like this at the top of the TryGetPose method work?
Should be added to the existing PolyfillHandRayPoseSource as well, then, since it doesn't check for valid hand either currently. |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
Also updates packages-lock.json
Fixes #548
Likely also fixes #580
Fixes the issue by adding an alternative hand ray pose source that can optionally be used that is much less affected by head rotations. To utilize the new hand ray pose source, within the MRTK XR Rig, select the Far Ray of each hand:
Then in the Inspector for each Far Ray, add an Aim Pose Source and select the LOSAngularOffsetHandRayPoseSource. Move the new pose source to the top of the list so it takes precedence, and set the hand:
Example video demonstrating the change. The white ray is the existing hand ray, the green ray is the new LOSAngularOffsetHandRayPoseSource:
org.MixedRealityToolkit.MRTK3Sample-20240125-101136.mp4