• Public
  • Public/Protected
  • All

Class WebXRGenericTriggerMotionController

A generic trigger-only motion controller for WebXR







Readonly componentsSearch playground for components

components: {}

A map of components (WebXRControllerComponent) in this motion controller Components have a ComponentType and can also have both button and axis definitions

Type declaration

disableAnimationSearch playground for disableAnimation

disableAnimation: boolean

Disable the model's animation. Can be set at any time.

gamepadObjectSearch playground for gamepadObject

The gamepad object correlating to this controller

handednessSearch playground for handedness

handedness (left/right/none) of this controller

onModelLoadedObservableSearch playground for onModelLoadedObservable

onModelLoadedObservable: Observable<WebXRAbstractMotionController>

Observers registered here will be triggered when the model of this controller is done loading

profileIdSearch playground for profileId

profileId: string

rootMeshSearch playground for rootMesh

The root mesh of the model. It is null if the model was not yet initialized

Static ProfileIdSearch playground for ProfileId

ProfileId: string

Static version of the profile id of this controller




disposeSearch playground for dispose

  • dispose(): void

getAllComponentsOfTypeSearch playground for getAllComponentsOfType

getComponentSearch playground for getComponent

getComponentIdsSearch playground for getComponentIds

  • getComponentIds(): string[]
  • Get the list of components available in this motion controller

    Returns string[]

    an array of strings correlating to available components

getComponentOfTypeSearch playground for getComponentOfType

getMainComponentSearch playground for getMainComponent

loadModelSearch playground for loadModel

  • loadModel(): Promise<boolean>
  • Loads the model correlating to this controller When the mesh is loaded, the onModelLoadedObservable will be triggered

    Returns Promise<boolean>

    A promise fulfilled with the result of the model loading


  • pulse(value: number, duration: number, hapticActuatorIndex?: number): Promise<boolean>
Pulse (vibrate) this controller If the controller does not support pulses, this function will fail silently and return Promise directly after called Consecutive calls to this function will cancel the last pulse call


  • value: number

    the strength of the pulse in 0.0...1.0 range

  • duration: number

    Duration of the pulse in milliseconds

  • Optional hapticActuatorIndex: number

    optional index of actuator (will usually be 0)

Returns Promise<boolean>

a promise that will send true when the pulse has ended and false if the device doesn't support pulse or an error accrued

updateFromXRFrameSearch playground for updateFromXRFrame

  • updateFromXRFrame(xrFrame: XRFrame): void


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