OctoXR
  • OctoXR
  • Setup
  • INPUT
    • Input
      • Hand Skeleton Configuration
      • Hand Skeleton Pose Provider
      • Input Data Provider
      • Hand Input Data Provider
      • Unity XR Controller Input Data Provider
      • Multi Source Input Data Provider
      • Input Confidence Trigger
      • Hand Skeleton
      • Hand Bone
  • PLATFORMS
    • OpenXR
      • Input
        • XR Hand Input Data Provider
  • Hand Pose Detection
    • How To Use
    • Scripting
      • HandPose
      • IHandPoseComponent
        • HandPoseShape
        • HandPoseOrientation
      • HandShapeCreator
      • HandPoseHandRef
  • User Interface
    • How To Use
    • Scripting
      • UIPointer
  • Locomotion
    • How To Use
    • Scripting
      • LocomotionSystem
      • TeleportRayInteractor
      • Teleport
        • HandTeleport
          • PinchTeleport
          • GestureTeleport
        • ControllerTeleport
      • ContinuousLocomotion
        • HandContinuousLocomotion
        • ControllerContinuousLocomotion
      • TeleportDestination
        • TeleportArea
        • TeleportAnchor
  • Interactions
    • Overview
    • Interactor
    • Interactable
    • Interaction Controller
    • Interaction trackers and indicators
  • Physics
    • How To Use
      • Physics Hand Skeleton
      • Physics Hand Bone
    • Scripting
      • PhysicsHandSkeleton
      • PhysicsHandBone
      • TriggerTracker
      • HandTriggerSkeleton
      • HandTriggerBone
  • General
    • ScreenFader
    • RayVisuals
Powered by GitBook
On this page
  • Setting Up
  • Screen Fader
  • Locomotion System
  • Create Teleport Destinations
  • Teleport
  • Results
  1. Locomotion

How To Use

PreviousUIPointerNextScripting

Last updated 2 years ago

Setting Up

Drag and drop OctoHand_Left and OctoHand_Right prefabs as a child of TrackingSpace.

Reference (for Oculus) OVRCameraRig to InputRoot of MultiSourceInputDataProvider for each hand.

Drag and drop Teleport prefab as a child of OctoHand_Left or OctoHand_Right.

Drag and drop Footprints and Teleport Reticle prefabs somewhere in the scene hierarchy. Note that you can use your own custom ones.

Screen Fader

In order to ease the motion sickness caused by immersive VR world, ScreenFader was implemented. In the sample scenes, It is mostly used to fade in and out while teleporting (blink teleport) and to fade in when the player is in an uncomfortable situation (perhaps on the edge of the building). Attach it to main camera (in this example CenterEyeAnchor). Provide it with the material from OctoXR/Materials folder.

Locomotion System

Attach LocomotionSystem component to the OVRCameraRig. Reference ScreenFader, CenterEyeCamera transform and Footprints game object.

Create Teleport Destinations

There are two types of teleport destinations. TeleportArea which represents larger area where player can freely teleport and TeleportAnchor where player teleports to the fixed location every time. Add a plane to the scene. Attach it with TeleportArea component and Ground component. Add another plane to the scene. Scale it down. This time attach it with TeleportAnchor component as well as Ground component. Planes should look somehow like this now:

Teleport

There are multiple predefined types of teleport in the OctoXR. Hand tracking teleport and controller tracking teleport. Hand tracking teleport is divided into pinch teleport and custom gesture teleport (Use only one, disable the other). Reference LocomotionSystem, BasicHandSkeleton, TeleportReticle and InputDataProviders to corresponding hands on elements of Teleport prefab.

Results

hort video tutorial explaining how to implement locomotion using OctoXR
Teleport Area Example
Teleport Anchor Example