Rift or Gear VR Head-mounted offset or deflection error,transform accumulate

For Unity FAQs

Develop for Gear VR or Oculus Rift using Unity's built in support.

We have gathered frequently asked questions from the developer community and have provided the answers below for your reference.

> My First-Person head-mounted display Camera look offset or deflection error, is it caused by Reals tracking system, or VRPN transform accumulate?

Our tracking system have degree of sub-millimeter level. Generally, its uncommon through test and on business used. We think this maybe caused by The Head Display device. Please have a try like this:

Download the Oculus Utilities for Unity5; or get it from the Unity Asset Store.Import the Utilities Unity Package.

If an application's simulation time is paused, OVRInput will not update. If a VR app is running while a Rift is unplugged from a PC and plugged back in without restarting the application, then the Rift display will appear black. To fix this, add the following lines to OVRPlugin.cs and disable your OVRCameraRig and OVRManager if OVRPlugin.shouldRecreateDistortionWindow is true. You will have to quit and re-start the app before it can use VR again.


 

The Utilities API have a main MonoBehaviours:OVRManager.it provide full access to the VR display.OVRDisplay Exposes the user's head pose and rendering state.Manages an Oculus Rift head-mounted display (HMD).

Creates an instance of OVRDisplay, Recenters the head pose.

//System.Action OVRDisplay.RecenteredPose

void OVRDisplay.RecenterPose ()

This function occurs when the head pose is reset.

 

 

For Unreal Engine FAQs

We have gathered frequently asked questions from the developer community and have provided the answers below for your reference.

> My First-Person head-mounted display mirror shifted 30 angles to the right at horizontal way. look offset or deflection error, is it caused by Reals tracking system, or VRPN transform accumulate, how can i back to centered ?

Our tracking system have degree of sub-millimeter level. Generally, its uncommon through test and on business used. We think this maybe caused by The Head Display device. One of the best ways to help with presence is to use a true first person viewpoint. Basically speaking, you bolt the camera to the players eyes.Please have a try like this:

1.Create blueprint based on your character of choice.

2.Under components tab, add a camera component.

3.Drag the camera component over your characters mesh to attach it there.

4.Select the camera component and change its Parent Socket to the bone/socket of your choice.

5.Adjust the relative location & rotation if required (its under Transform).

6.Make sure Camera Settings => Use Controller View Rotation is enabled.

7.Compile the Blueprint.

8.Set the Default Pawn Class of your game mode to your TFP character.

9.Zero out the Virtual Head Model.

This is already positioned at the location of the players eyes, this extra offset is unnecessary.A virtual head model will be used to offset the players viewpoint. For a traditional first person viewpoint that rotates on a central axis, this is fine.

 



 

 

By default, head tracking will affect the player's view, rotation and movement direction.

Also altered via C++ :

Using an Oculus Rift in Unreal Engine 4 affects the rotation responsible for both the players view and movement direction. There are two main functions, outside of the actual plugin, that are responsible for controlling how the players viewpoint is modified by input from the Oculus Rift:

APlayerController::UpdateRotation().

APlayerCameraManager::UpdateViewTarget().

The players view and movement directions are separate, The C++ method is a more complex, but is also more flexible.

u Create a Blueprint that based on PlayerCameraManager. find "Follow Hmd Orientation" and set it to "true".

u Create a Blueprint that based on PlayerController. find Player Camera Manager Class and set it to your PlayerCameraManager Blueprint.

u Create a Blueprint that based on GameMode.find Default Controller Class and set it to your PlayerController Blueprint.

u Under your levels World Settings, find GameMode Override and set it to your GameMode Blueprint.



 

 



 

 

 

 

 

 

Also altered via consle commands :

Control or reset vsync:hmd vsync on/off/reset 

 

 

 

 

猜你喜欢

转载自avi.iteye.com/blog/2389761