Search code examples
c#unity-game-engineoculus

Amplify user movement


I am trying to 'amplify' the movement of a player in a virtual reality game. What I mean by this is that one meter of movement in reality is equal to 1.5 or even 2 meters in virtual reality. I'm using the OVR asset provided by Oculus; I can't find an implementation of this online but I've attempted the following:

camera.UpdatedAnchors += delegate (OVRCameraRig rig)
{
    float multiplier = 10;
    rig.leftEyeAnchor.localPosition *= multiplier;
    rig.rightEyeAnchor.localPosition *= multiplier;
    rig.centerEyeAnchor.localPosition *= multiplier;
};

While the local positions of the anchors above are being manipulated (I confirmed by printing the values), there is no change in the user experience, I feel movement as regularly as I did before. Am I updating the correct values?


Solution

  • An alternative method I used was to scale the OVRCameraRig object and adjust the camera's position and field of view such that the perceived size of the user in the virtual world remained unchanged.