Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
angularsen's avatar
angularsen
Explorer
8 years ago

Feature request: Disable positional tracking of head and keep hands and avatar correctly positioned

Unity 2018.1.8 and OVR Platform SDK 1.24, Avatar SDK 1.27.

Motivation
1st person view where you sit or stand in the real world, and drag yourself around with your arms in the virtual world. You don't want the user to be able to walk around in the virtual world and you don't want to offset the camera from the virtual body.

Problem
I can't seem to find a way to disable positional tracking of the head, and still have hands and avatar positioned correctly relative to the head.

1. Keep local position of head fixed at 0,0,0 relative to parent transform (eye cameras)
2. Position hands relative to head as in the real world
3. Show avatar at same position with body and hands, and rotate avatar head to show where he is looking

There is a 'Use position tracking' in OVRCameraRig that disables repositioning of cameras and avatar, but the hands are still tracked in room space and can be meters away from the virtual body (bullet point 2). Also the avatar does not update to show the user looking in different directions (bullet point 3).

Current workaround
I found very little info on this and finally reached a workaround outlined in: https://forums.oculusvr.com/developer/discussion/comment/629460/#Comment_629460
Basically you move the camera rig's TrackingSpace to compensate for head movement and override the avatar pose calculations.
It does feel hackish to manipulate OVR scripts like this and I wish there was an official support or a recommended way to achieve this.

1 Reply

Replies have been turned off for this discussion
  • Thanks for the reply. I can understand the reasoning, but I would argue that there are locomotion types where this makes sense and based on feedback from a handful of people so far it does not induce too much discomfort. If anything, at least a working solution is now documented here.