Skip to main content

Class: Input

Defined in: src/input/Input.ts:42

Holds physical input sources and samples their current state each frame.

Constructors​

Constructor​

new Input(): Input

Returns​

Input

Properties​

activeControllers​

activeControllers: ActiveControllers

Defined in: src/input/Input.ts:61


controllerGrips​

controllerGrips: Group<Object3DEventMap>[] = []

Defined in: src/input/Input.ts:45


controllers​

controllers: Controller[] = []

Defined in: src/input/Input.ts:44


controllersEnabled​

controllersEnabled: boolean = true

Defined in: src/input/Input.ts:53


gamepadController​

gamepadController: GamepadController

Defined in: src/input/Input.ts:52


gazeController​

gazeController: GazeController

Defined in: src/input/Input.ts:50


hands​

hands: XRHandSpace[] = []

Defined in: src/input/Input.ts:46


headGestures?​

optional headGestures: HeadGestureRecognition

Defined in: src/input/Input.ts:48

Completed head gestures, when enabled before initialization.


leftController?​

optional leftController: Controller

Defined in: src/input/Input.ts:62


listeners​

listeners: Map<any, any>

Defined in: src/input/Input.ts:54


mouseController​

mouseController: MouseController

Defined in: src/input/Input.ts:51


options​

options: Options

Defined in: src/input/Input.ts:43


pivotsEnabled​

pivotsEnabled: boolean = false

Defined in: src/input/Input.ts:49


reticles​

reticles: Reticles

Defined in: src/input/Input.ts:64


rightController?​

optional rightController: Controller

Defined in: src/input/Input.ts:63

Methods​

addObject()​

addObject(obj): void

Defined in: src/input/Input.ts:193

Adds an object to both controllers by creating a new group and cloning it.

Parameters​

obj​

Object3D

The object to add to each controller.

Returns​

void


addReticles()​

addReticles(): void

Defined in: src/input/Input.ts:219

Adds reticles to the controllers and scene, with initial visibility set to false.

Returns​

void


bindKeyDown()​

bindKeyDown(event): void

Defined in: src/input/Input.ts:421

Parameters​

event​

(event) => void

Returns​

void


bindKeyUp()​

bindKeyUp(event): void

Defined in: src/input/Input.ts:427

Parameters​

event​

(event) => void

Returns​

void


bindListener()​

bindListener(listenerName, listener): void

Defined in: src/input/Input.ts:333

Binds a listener to both controllers.

Parameters​

listenerName​

keyof ControllerEventMap

Event name

listener​

(event) => void

Function to call

Returns​

void


bindSelect()​

bindSelect(event): void

Defined in: src/input/Input.ts:396

Binds an event listener to handle 'select' events for both controllers.

Parameters​

event​

(event) => void

The event listener function.

Returns​

void


bindSelectEnd()​

bindSelectEnd(event): void

Defined in: src/input/Input.ts:388

Binds an event listener to handle 'selectend' events for both controllers.

Parameters​

event​

(event) => void

The event listener function.

Returns​

void


bindSelectStart()​

bindSelectStart(event): void

Defined in: src/input/Input.ts:380

Binds an event listener to handle 'selectstart' events for both controllers.

Parameters​

event​

(event) => void

The event listener function.

Returns​

void


bindSqueeze()​

bindSqueeze(event): void

Defined in: src/input/Input.ts:417

Parameters​

event​

(event) => void

Returns​

void


bindSqueezeEnd()​

bindSqueezeEnd(event): void

Defined in: src/input/Input.ts:413

Binds an event listener to handle 'squeezeend' events for both controllers.

Parameters​

event​

(event) => void

The event listener function.

Returns​

void


bindSqueezeStart()​

bindSqueezeStart(event): void

Defined in: src/input/Input.ts:405

Binds an event listener to handle 'squeezestart' events for both controllers.

Parameters​

event​

(event) => void

The event listener function.

Returns​

void


defaultOnConnected()​

defaultOnConnected(event): void

Defined in: src/input/Input.ts:286

Parameters​

event​

ControllerEvent

Returns​

void


defaultOnDisconnected()​

defaultOnDisconnected(event): void

Defined in: src/input/Input.ts:301

Parameters​

event​

ControllerEvent

Returns​

void


defaultOnSelectEnd()​

defaultOnSelectEnd(event): void

Defined in: src/input/Input.ts:268

Default action to handle the end of a selection, setting the selecting state to false.

Parameters​

event​

ControllerEvent

Returns​

void


defaultOnSelectStart()​

defaultOnSelectStart(event): void

Defined in: src/input/Input.ts:259

Default action to handle the start of a selection, setting the selecting state to true.

Parameters​

event​

ControllerEvent

Returns​

void


defaultOnSqueezeEnd()​

defaultOnSqueezeEnd(event): void

Defined in: src/input/Input.ts:280

Parameters​

event​

ControllerEvent

Returns​

void


defaultOnSqueezeStart()​

defaultOnSqueezeStart(event): void

Defined in: src/input/Input.ts:274

Parameters​

event​

ControllerEvent

Returns​

void


disableController()​

disableController(controller): void

Defined in: src/input/Input.ts:560

Parameters​

controller​

Controller

Returns​

void


disableControllers()​

disableControllers(): void

Defined in: src/input/Input.ts:565

Returns​

void


disableGazeController()​

disableGazeController(): void

Defined in: src/input/Input.ts:534

Returns​

void


dispatchEvent()​

dispatchEvent(event): void

Defined in: src/input/Input.ts:364

Parameters​

event​

ControllerEvent

Returns​

void


dispose()​

dispose(): void

Defined in: src/input/Input.ts:581

Returns​

void


enableController()​

enableController(controller): void

Defined in: src/input/Input.ts:554

Parameters​

controller​

Controller

Returns​

void


enableControllers()​

enableControllers(): void

Defined in: src/input/Input.ts:577

Returns​

void


enableGazeController()​

enableGazeController(): void

Defined in: src/input/Input.ts:529

Returns​

void


enablePivots()​

enablePivots(): void

Defined in: src/input/Input.ts:206

Creates a pivot point for each hand, primarily used as a reference point.

Returns​

void


get()​

get(id): Object3D

Defined in: src/input/Input.ts:185

Retrieves the controller object by its ID.

Parameters​

id​

number

The ID of the controller.

Returns​

Object3D

The controller with the specified ID.


getFrame()​

getFrame(): InteractionFrameInput

Defined in: src/input/Input.ts:456

Returns the complete physical source state sampled this frame.

Returns​

InteractionFrameInput


init()​

init(__namedParameters): void

Defined in: src/input/Input.ts:80

Initializes physical input sources. Only called by Core.

Parameters​

__namedParameters​
options​

Options

renderer​

WebGLOrWebGPURenderer

systemsGroup​

XRSystems

Returns​

void


sampleSources()​

sampleSources(): void

Defined in: src/input/Input.ts:444

Samples current controller, button, and direct-touch state.

Returns​

void


setReticleConfigurer()​

setReticleConfigurer(configurer): void

Defined in: src/input/Input.ts:240

Sets a configuration callback for reticles (such as upgrading to WebGPU materials) and immediately applies it to all existing reticles.

Parameters​

configurer​

(reticle) => void

Returns​

void


unbindKeyDown()​

unbindKeyDown(event): void

Defined in: src/input/Input.ts:433

Parameters​

event​

(event) => void

Returns​

void


unbindKeyUp()​

unbindKeyUp(event): void

Defined in: src/input/Input.ts:438

Parameters​

event​

(event) => void

Returns​

void


unbindListener()​

unbindListener(listenerName, listener): void

Defined in: src/input/Input.ts:346

Parameters​

listenerName​

keyof ControllerEventMap

listener​

(event) => void

Returns​

void