Gear VR, Oculus Go

Prerequisites

InstantVR

Gear VR / Oculus Go is supported in InstantVR version 3.2 and higher.

Oculus Quest is not supported.

Humanoid Control

Gear VR / Oculus Go and the controller are supported in Humanoid Control VR, Plus and Pro packages.

Oculus Quest is supported in Humanoid Control VR, Plus and Pro version 2.2 and higher.

Hardware

Samsung Gear VR Innovator & Consumer versions and Oculus Go and Quest are supported.

The extension supports Samsung Gear VR and Oculus Go/Quest on Android. Ensure Android is selected as platform in Build Settings.

Operating System

Setup

Pre Unity 2017.2: Virtual Reality Supported needs to be enabled in Edit Menu->Project Settings->Player->Other Settings. Oculus needs to be added to the Virtual Reality SDKs.

Unity 2017.2 and higher: Virtual Reality Supported needs to be enabled in Edit Menu->Project Settings->Player->XR Settings. Oculus needs to be added to the Virtual Reality SDKs.

InstantVR

Oculus needs to be enabled in the Edit Menu->Preferences->Instant VR->Oculus Support.

The script IVR_UnityVR should be added to the character’s GameObject. It is suggested to use one of the MH_VR… prefabs found in the InstantVR/prefabs folder as a starting point.

Humanoid Control

Oculus needs to be enabled in the Edit Menu->Preferences->Humanoid->Oculus Support.

Disabling Oculus Support ensures that no code related to Gear VR is included in the build.

Targets

To enable tracking with Gear VR/Oculus Go for an avatar, Oculus needs to be enabled in the Humanoid Control component.

In Humanoid Control v2.2 and higher, the Device Type can be used to select the specific Oculus device. Selecting Oculus Quest ensures that positional hand tracking is enabled.

Head Target

First Person Camera needs to be supported for the Gear VR/Oculus Go. For convenience, this option is also found on the Humanoid Control script.

In the editor, it is possible to use a Oculus Rift to test the use of the Gear VR or Oculus Go.

Hand Target

The Oculus Controller needs to be enabled on the Hand Targets for controller support.

Gear VR / Oculus Go only supports one controller per headset. The controller only supports rotational tracking in combination with a simplified arm model. The tracking quality will therefore be limited.

Oculus Quest supports full positional and rotational tracking and both hands can be tracked.

In the editor, it is possible to use a Oculus Touch to test the use of the controllers.

The Controller models are shown in the scene when Humanoid Control->Settings->Show Real Objects is enabled. These models can be moved in the scene to place the controllers to the right position relative to the hands of the avatar. A reference to these transforms is found in the Tracker Transform field.

Controller Input

Samsung Gear VR / Oculus Go

The buttons of the Gear VR Controller can be accessed using the Game Controller Input. The buttons are mapped as follows:

Left Controller
Dpad press controller.left.stickButton
Dpad movements controller.left.stickHorizontal/stickVertical
Back controller.left.option
Right Controller
Dpad press controller.right.stickButton
Dpadmovements controller.right.stickHorizontal/stickVertical
Back controller.right.option

Oculus Quest

The buttons of the Oculus Quest controllers can be accessed using the Game Controller Input. The buttons are mapped as follows:

Left Controller
X button controller.left.button[0]
Y button controller.left.button[1]
Thumbstick touch controller.left.stickTouch
Thumbstick press controller.left.stickButton
Thumbstick movements controller.left.stickHorizontal/stickVertical
Index Trigger controller.left.trigger1
Hand Trigger controller.left.trigger2
Right Controller
A button controller.right.button[0]
B button controller.right.button[1]
Thumbstick touch controller.right.stickTouch
Thumbstick press controller.right.stickButton
Thumbstick movements controller.right.stickHorizontal/stickVertical
Index Trigger controller.right.trigger1
Hand Trigger controller.right.trigger2