• Public
  • Public/Protected
  • All

The options container for the teleportation module


  • IWebXRTeleportationOptions



blockedRayColor?: Color4

Color of the teleportation ray when it is blocked by a mesh in the pickBlockerMeshes array Defaults to red.

customUtilityLayerScene?: Scene

if provided, this scene will be used to render meshes.

defaultTargetMeshOptions?: { disableAnimation?: boolean; disableLighting?: boolean; teleportationBorderColor?: string; teleportationCircleMaterial?: Material; teleportationFillColor?: string; torusArrowMaterial?: Material }

Values to configure the default target mesh

Type declaration

  • Optional disableAnimation?: boolean

    Disable the mesh's animation sequence

  • Optional disableLighting?: boolean

    Disable lighting on the material or the ring and arrow

  • Optional teleportationBorderColor?: string

    Border color for the teleportation area

  • Optional teleportationCircleMaterial?: Material

    Override the default material of the Landing Zone

  • Optional teleportationFillColor?: string

    Fill color of the teleportation area

  • Optional torusArrowMaterial?: Material

    Override the default material of the torus and arrow

floorMeshes?: AbstractMesh[]

A list of meshes to use as floor meshes. Meshes can be added and removed after initializing the feature using the addFloorMesh and removeFloorMesh functions If empty, rotation will still work

forceHandedness?: XRHandedness

Should teleport work only on a specific hand?

pickBlockerMeshes?: AbstractMesh[]

Meshes that the teleportation ray cannot go through

renderingGroupId?: number

use this rendering group id for the meshes (optional)

snapPointsOnly?: boolean

Should teleportation move only to snap points

snapPositions?: Vector3[]

An array of points to which the teleportation will snap to. If the teleportation ray is in the proximity of one of those points, it will be corrected to this point.

snapToPositionRadius?: number

How close should the teleportation ray be in order to snap to position. Default to 0.8 units (meters)

teleportationTargetMesh?: AbstractMesh

Provide your own teleportation mesh instead of babylon's wonderful doughnut. If you want to support rotation, make sure your mesh has a direction indicator.

When left untouched, the default mesh will be initialized.

timeToTeleport?: number

If main component is used (no thumbstick), how long should the "long press" take before teleport

useMainComponentOnly?: boolean

Disable using the thumbstick and use the main component (usually trigger) on long press. This will be automatically true if the controller doesn't have a thumbstick or touchpad.

useUtilityLayer?: boolean

Should meshes created here be added to a utility layer or the main scene

xrInput: WebXRInput

Babylon XR Input class for controller


  • If provided, this function will be used to generate the ray mesh instead of the lines mesh being used per default


    Returns AbstractMesh


  • Constructor
  • Property
  • Method
  • Inherited constructor
  • Inherited property
  • Inherited method
  • Property
  • Method
  • Static method