Skip to content

Movement and Controls

eisclimber edited this page Apr 20, 2024 · 2 revisions

Movement and Controls

This document describes the default controls for interaction and movement in VR. The input mapping can be edited via the asset at: "Assets/Settings/Input Mappings/XRI Default Input Actions.inputactions"

Movement Preset

The rig provides the following presets for movement. Some of them and their concepts are explained further in the following sections:

  • Teleport: The most versatile option for movement. Teleport with Snap Turn on both controllers.
  • Joystick: Emulates gamepad movement: Rotate with the right controller, move with the left.
  • GrabMotion: The world can be grabbed and pulled with any single hand towards the player.
  • GrabManipulation: Like 'GrabWorldMotion'. But grabbing with both hands lets users scale and rotate the world.
  • Head Gaze: Focus on the direction of the head, and after a while, an interaction or teleport will be triggered.
  • Eye Gaze: Focus the direction of the eye, and after a while, an interaction or teleport will be triggered.
  • None: No movement despite room scale (movement in the real world).
  • Custom: Can be used for creating custom movement if no other preset is applicable.
  • Custom(Saved): Loads a previously configured and configured rig. A rig can be saved via the rig's inspector. Only one rig can be saved this way.

Controller

Controls for interaction and movement using a headset with controllers.

    Controllscheme of a VR Controller using Teleport

If you altered the controls or are using a different controller, you will find the SVG of this image and other controllers in '/Assets/ExPresS XR/Sprites/Controls'. You can use vector-graphic programs like Inkscape to edit the SVGs.

Interaction

Can be enabled on both controllers via the ExPresS XR Rig.

  • Select: Press (and hold) the trigger button while the controller is near a selectable XR Interactable. For Valve Index, this can also be done by gripping (e.g., closing the hand) the controller.

Tipp: To be more accessible, you can combine UI and normal selection by adding the triggerPressed for the XR [Left/Right] Hand Interaction/Select-InputAction in the ExPresS XR Default Input Actions.inputaction-Asset. You can copy it from  XR [Left/Right] Hand Interaction/Select UI and make sure to select the correct InputAction for each hand.

UI Interaction

Can be enabled on both controllers via the ExPresS XR Rig.

  • Select: Press the trigger button while pointing the controller towards a selectable UI element.

Teleportation

Can be enabled on both controllers via the ExPresS XR Rig.

  • Enter Teleportation Mode: Push the joystick forwards and hold it away from the center until ready to teleport.
  • Cancel Teleportation Mode: Must be enabled in HandController. When in Teleportation Mode, press the trigger (or grip the controller for Valve Index) to cancel the teleportation.
  • Change Looking Direction After Teleportation: When in Teleportation Mode, turning the joystick will change the orientation after being teleported to match the direction of the joystick when released.
  • Select Teleportation: When in Teleportation Mode and hovering on a valid target, release the joystick to teleport.

Snap Turn

Active for left controller when enabled via the ExPresS XR Rig.

  • Snap Turn Left (45 Degrees): Move the joystick to the left.
  • Snap Turn Right (45 Degrees): Move the joystick to the right.
  • Snap Turn (180 Degrees): Move the joystick to the back.

Continuous Move

Active for the right controller when enabled via the ExPresS XR Rig.

  • Move: Hold the joystick in the direction you want to move.

Continuous Turn

Active for the left controller when enabled via the ExPresS XR Rig.

  • Continuous Turn Left: Hold the joystick to the left.
  • Continuous Turn Right: Hold the joystick to the right.

Climbing

Use the 'Select'-Interaction to grab and hold Climb Interactable. Moving the hand grabbing will move you around.   Activatable via the InputOptions.

Head Gaze

Controls for interaction and movement using a headset without controllers or a smartphone.

(UI-)Interaction and Teleportation

  • Select Action: Hold your head steady on a valid target. After the circle HeadGazeReticle is full, the select action will be performed. If enabled, keeping the head still will continuously trigger new selects.
  • Cancel Select Action: Move your head while the HeadGazeReticle is active or target a new interactor.

In order for interactions to work, the mouse must be registered in the window. Be sure to click into the (Unity-Editor-)Window if interactions/teleportation are not being executed.  

Eye Gaze

Like Head Gaze but using the look direction of the eyes instead. This feature could not be verified to work as we are lacking a compatible device.

ExPresS XR Wiki

Tutorial Pages

Code Documentation

Clone this wiki locally