Mapping Oculus Controller Input to Blueprint Events

This reference section describes how Oculus controller actions (such as thumbstick presses) map to the corresponding events that can be handled via blueprints.

Overview

When a user invokes an action on the Oculus Touch, Oculus Go controller, or Gear VR controller, such as pressing a button, your application can handle the resulting events by using the blueprints described in this section.

The most common controller actions can be accessed via the standard Unreal MotionController API. These types of controller input tend to be supported across VR platforms from difference vendors.

In addition, Oculus provides several Oculus-specific controller actions. For example, the Oculus Touch (L) Thumb Up CapTouch event uses a capacitive touch sensor to measure how far the user's thumb is from the thumbstick. The Oculus-specific events can be accessed via the Oculus-specific blueprints.

Both the Unreal MotionController blueprints and the Oculus-specific blueprints are covered in the following reference sections.

Note: The Oculus Go and GearVR controllers work in ways that are fundamentally the same. The two controllers have the same number of buttons and the same layout, by design, so that you can develop applications that easily work on both controllers. Please note, however, that the Oculus Go controller has a trigger, which is not present on the Gear VR controller. However, from a technical point of view, Oculus Go and Gear VR are a single platform: the store is the same, and the APK is the same, by design. The Oculus Store actually does not allow dual APKs for an application that targets both the Oculus Go and the Gear VR. Such applications must consist of only one APK. For example, an application may not target Vulkan on Oculus Go, and GLES on Gear VR, since the choice between these two rendering systems is determined by setting that applies to the entire APK, and it must be the same APK across the entire application.

Oculus Go Controller

Oculus Go Action

Blueprint Event

Thumbstick touch, press, and release actions

  • MotionController (L) Thumbstick - The thumbstick Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) Thumbstick - The thumbstick Pressed and Released events, if the Oculus Go controller is associated with the right hand
  • Oculus Touch (L) Thumbstick CapTouch - The thumbstick capacitive touch event, if the Oculus Go controller is associated with the left hand. The Axis Value returns 1 if the user is touching the thumbstick, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) Thumbstick CapTouch - The thumbstick capacitive touch event, if the Oculus Go controller is associated with the right hand. The Axis Value returns 1 if the user is touching the thumbstick, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.

Trigger press and release actions

  • MotionController (L) Trigger - The trigger Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) Trigger - The trigger Pressed and Released events, if the Oculus Go controller is associated with the right hand

Back button touch, press, and release actions

  • MotionController (L) FaceButton1 - The Back button Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) FaceButton1 - The Back button Pressed and Released events, if the Oculus Go controller is associated with the right hand

Thumbstick click and release actions at the 12:00 position

  • MotionController (L) Thumbstick Up - The thumbstick 12:00 position Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) Thumbstick Up - The thumbstick 12:00 position Pressed and Released events, if the Oculus Go controller is associated with the right hand

Thumbstick click and release actions at the 6:00 position

  • MotionController (L) Thumbstick Down - The thumbstick 6:00 position Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) Thumbstick Down - The thumbstick 6:00 position Pressed and Released events, if the Oculus Go controller is associated with the right hand

Thumbstick click and release actions at the 9:00 position

  • MotionController (L) Thumbstick Left - The thumbstick 9:00 position Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) Thumbstick Left - The thumbstick 9:00 position Pressed and Released events, if the Oculus Go controller is associated with the right hand

Thumbstick click and release actions at the 3:00 position

  • MotionController (L) Thumbstick Right - The thumbstick 3:00 position Pressed and Released events, if the Oculus Go controller is associated with the left hand
  • MotionController (R) Thumbstick Right - The thumbstick 3:00 position Pressed and Released events, if the Oculus Go controller is associated with the right hand

Oculus Touch

Oculus Touch Action

Blueprint Event

Thumbstick touch, press, and thumb up actions

  • MotionController (L) Thumbstick - The left controller thumbstick Pressed and Released events. In order for the Pressed event to fire, the thumbstick must be pressed to the point of clicking.
  • MotionController (R) Thumbstick - The right controller thumbstick Pressed and Released events. In order for the Pressed event to fire, the thumbstick must be pressed to the point of clicking.
  • Oculus Touch (L) Thumbstick CapTouch - The left controller thumbstick capacitive touch event. The Axis Value returns 1 if the user is touching the thumbstick, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) Thumbstick CapTouch - The right controller thumbstick capacitive touch event. The Axis Value returns 1 if the user is touching the thumbstick, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (L) Thumb Up CapTouch - The left controller thumbstick capacitive touch event. The Axis Value returns a floating point value, from 0.0 to 1.0, that expresses how far the user's thumb is from the thumbstick, where 0.0 is as close as possible, and 1.0 is as far away as can be measured by the thumbstick. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) Thumb Up CapTouch - The right controller thumbstick capacitive touch event. The Axis Value returns a floating point value, from 0.0 to 1.0, that expresses how far the user's thumb is from the thumbstick, where 0.0 is as close as possible, and 1.0 is as far away as can be measured by the thumbstick. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.

Trigger touch, press, release, and pointing finger actions

  • MotionController (L) Trigger - The left controller trigger Pressed and Released events.
  • MotionController (R) Trigger - The right controller trigger Pressed and Released events.
  • Oculus Touch (L) Trigger CapTouch - The left controller trigger capacitive touch event. The Axis Value returns 1 if the user is touching the trigger, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) Trigger CapTouch - The right controller trigger capacitive touch event. The Axis Value returns 1 if the user is touching the trigger, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (L) Pointing CapTouch - The left controller pointing capacitive touch event. The Axis Value returns a floating point value, from 0.0 to 1.0, that expresses how far away the user's finger is pointing from the trigger, where 0.0 is as close as possible, and 1.0 is as far away as can be measured by the trigger. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) Pointing CapTouch - The right controller pointing capacitive touch event. The Axis Value returns a floating point value, from 0.0 to 1.0, that expresses how far away the user's finger is pointing from the trigger, where 0.0 is as close as possible, and 1.0 is as far away as can be measured by the trigger. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.

Grip press and release actions

  • MotionController (L) Grip1 - The left controller grip Pressed and Released events.
  • MotionController (R) Grip1 - The right controller grip Pressed and Released events.

X or A button press and release actions

  • MotionController (L) FaceButton1 - The left controller X button Pressed and Released events
  • MotionController (R) FaceButton1 - The right controller A button Pressed and Released events
  • Oculus Touch (L) X Button CapTouch - The left controller X button capacitive touch event. The Axis Value returns 1 if the user is touching the X button, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) A Button CapTouch - The right controller A button capacitive touch event. The Axis Value returns 1 if the user is touching the A button, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.

Y or B button press and release actions

  • MotionController (L) FaceButton2 - The left controller Y button Pressed and Released events
  • MotionController (R) FaceButton2 - The right controller B button Pressed and Released events
  • Oculus Touch (L) Y Button CapTouch - The left controller Y button capacitive touch event. The Axis Value returns 1 if the user is touching the Y button, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) B Button CapTouch - The right controller B button capacitive touch event. The Axis Value returns 1 if the user is touching the B button, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.

Thumbstick up press and release actions

  • MotionController (L) Thumbstick Up - The left controller Thumbstick Up Pressed and Released events
  • MotionController (R) Thumbstick Up - The right controller Thumbstick Up Pressed and Released events

Thumbstick down press and release actions

  • MotionController (L) Thumbstick Down - The left controller Thumbstick Down Pressed and Released events
  • MotionController (R) Thumbstick Down - The right controller Thumbstick Down Pressed and Released events

Thumbstick left press and release actions

  • MotionController (L) Thumbstick Left - The left controller Thumbstick Left Pressed and Released events
  • MotionController (R) Thumbstick Left - The right controller Thumbstick Left Pressed and Released events

Thumbstick right press and release actions

  • MotionController (L) Thumbstick Right - The right controller Thumbstick Right Pressed and Released events
  • MotionController (R) Thumbstick Right - The right controller Thumbstick Right Pressed and Released events

Gear VR Controller

Gear VR Controller Action

Blueprint Event

Thumbstick touch, press, and release actions

  • MotionController (L) Thumbstick - The thumbstick Pressed and Released events, if the Gear VR controller is associated with the left hand.
  • MotionController (R) Thumbstick - The thumbstick Pressed and Released events, if the Gear VR controller is associated with the right hand
  • Oculus Touch (L) Thumbstick CapTouch - The thumbstick capacitive touch event, if the Gear VR controller is associated with the left hand. The Axis Value returns 1 if the user is touching the thumbstick, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.
  • Oculus Touch (R) Thumbstick CapTouch - The thumbstick capacitive touch event, if the Gear VR controller is associated with the right hand. The Axis Value returns 1 if the user is touching the thumbstick, and 0 otherwise. This event fires once per frame, when input is enabled for the containing actor. Note: There is also a corresponding gamepad value blueprint (with the same name) that can be explicitly retrieved at any time.

Back button touch, press, and release actions

  • MotionController (L) FaceButton1 - The Back button Pressed and Released events, if the Gear VR controller is associated with the left hand.
  • MotionController (R) FaceButton1 - The Back button Pressed and Released events, if the Gear VR controller is associated with the right hand.

Thumbstick click and release actions at the 12:00 position

  • MotionController (L) Thumbstick Up - The thumbstick 12:00 position Pressed and Released events, if the Gear VR controller is associated with the left hand
  • MotionController (R) Thumbstick Up - The thumbstick 12:00 position Pressed and Released events, if the Gear VR controller is associated with the right hand

Thumbstick click and release actions at the 6:00 position

  • MotionController (L) Thumbstick Down - The thumbstick 6:00 position Pressed and Released events, if the Gear VR controller is associated with the left hand
  • MotionController (R) Thumbstick Down - The thumbstick 6:00 position Pressed and Released events, if the Gear VR controller is associated with the right hand

Thumbstick click and release actions at the 9:00 position

  • MotionController (L) Thumbstick Left - The thumbstick 9:00 position Pressed and Released events, if the Gear VR controller is associated with the left hand
  • MotionController (R) Thumbstick Left - The thumbstick 9:00 position Pressed and Released events, if the Gear VR controller is associated with the right hand

Thumbstick click and release actions at the 3:00 position

  • MotionController (L) Thumbstick Right - The thumbstick 3:00 position Pressed and Released events, if the Gear VR controller is associated with the left hand
  • MotionController (R) Thumbstick Right - The thumbstick 3:00 position Pressed and Released events, if the Gear VR controller is associated with the right hand