How do I manually offset a VR players head?

Ok. So what I am trying to do is ridiculous, and probably sickness inducing. But I am having fun in VR so let me have this! What I am trying to do is make a game where you play as a giraffe. I want to offset the players point of view in VR so that their POV is from about 10ft above where their actual head is. So if they look down in reality, their vr head will swing in a wide arc bringing them closer to the ground. I am using the SteamVR plugin to manage my vr and it really doesn’t want to let me do this.


If I set the VR Eye position in Update() Editor shows that the object has moved to the correct position, but the image rendered to the headset does not.


Here’s the really fun part. If I set the VR Eye position in OnPreRender() it works perfectly! But only in the right eye! The left eye continues to render from the normal head position!


I assume somewhere the value is being updated, probably to render from the second eye position, but I can’t figure out where that logic is run to modify the position. I don’t see it in the steam VR_Camera script.


Does anyone know what is resetting the camera position, and/or how I can modify it?

Its not really intended to manually change the positions of the various tracked objects within the vr rig, however you can move the entire rig, or scale it. You could try finding the position of the head within the vr rig space, and then also move the position of the rig itself by a multiple of that amount. Scaling the rig will have similar effects, but will also make everything appear smaller.