// InitCameraControllerVariables // Made public so that it can be called by classes that require information about the // camera to be present when initing variables in 'Start' public void InitCameraControllerVariables() { // Get the IPD value (distance between eyes in meters) OVRDeviceImposter.GetIPD(ref IPD); // Get the values for both IPD and lens distortion correction shift. We don't normally // need to set the PhysicalLensOffset once it's been set here. OVRDeviceImposter.CalculatePhysicalLensOffsets(ref LensOffsetLeft, ref LensOffsetRight); // Using the calculated FOV, based on distortion parameters, yeilds the best results. // However, public functions will allow to override the FOV if desired VerticalFOV = OVRDeviceImposter.VerticalFOV(); // Store aspect ratio as well AspectRatio = OVRDeviceImposter.CalculateAspectRatio(); OVRDeviceImposter.GetDistortionCorrectionCoefficients(ref DistK0, ref DistK1, ref DistK2, ref DistK3); // Get our initial world orientation of the cameras from the scene (we can grab it from // the set FollowOrientation object or this OVRCameraController gameObject) if (FollowOrientation != null) { OrientationOffset = FollowOrientation.rotation; } else { OrientationOffset = transform.rotation; } }