voxolith

Input

The input for one surface, made by createInput. It owns every listener; gestures, actions, touch controls and camera controllers read from it rather than adding their own.

Defined in: engine/src/input/core.ts:131

Edge queries (pressed, released, padPressed, virtualPressed, ...) report what changed between the last two update() calls, so call update() once per frame before reading them.

Properties

PropertyModifierTypeDescriptionDefined in
elreadonlyEventTargetThe surface the pointer and wheel listeners are on.engine/src/input/core.ts:133

Methods

active()

active(): boolean;

Defined in: engine/src/input/core.ts:182

True while anything is being held; render continuously while it is.

Returns

boolean


captureKeys()

captureKeys(codes: Iterable<string>): void;

Defined in: engine/src/input/core.ts:153

Only these codes have their default action prevented (so bound keys don't scroll).

Parameters

ParameterType
codesIterable<string>

Returns

void


claim()

claim(pointerId: number, owner: object): boolean;

Defined in: engine/src/input/core.ts:142

Reserve a pointer for one owner; others should ignore it (claimedBy).

Parameters

ParameterType
pointerIdnumber
ownerobject

Returns

boolean


claimedBy()

claimedBy(pointerId: number): object | undefined;

Defined in: engine/src/input/core.ts:144

The owner that claimed a pointer, if any. Claims are released when the pointer lifts.

Parameters

ParameterType
pointerIdnumber

Returns

object | undefined


dispose()

dispose(): void;

Defined in: engine/src/input/core.ts:188

Remove every listener, drop all state and release pointer lock.

Returns

void


down()

down(code: string): boolean;

Defined in: engine/src/input/core.ts:147

Key held (by KeyboardEvent.code).

Parameters

ParameterType
codestring

Returns

boolean


gamepad()

gamepad(): GamepadState | null;

Defined in: engine/src/input/core.ts:156

The first connected gamepad, as of the last update().

Returns

GamepadState | null


lastDevice()

lastDevice(): Device;

Defined in: engine/src/input/core.ts:184

What was used last, for showing the right prompts or touch controls.

Returns

Device


lock()

lock(): void;

Defined in: engine/src/input/core.ts:173

Ask for pointer lock (must be called from a user gesture).

Returns

void


locked()

locked(): boolean;

Defined in: engine/src/input/core.ts:177

This surface holds pointer lock; mouse movement then arrives as look events.

Returns

boolean


on()

on(fn: (e: InputEvent) => void, priority?: number): () => void;

Defined in: engine/src/input/core.ts:140

Listen to normalised events. Higher priority hears them first; see claim. Returns an unsubscribe.

Parameters

ParameterType
fn(e: InputEvent) => void
priority?number

Returns

() => void


onDevice()

onDevice(fn: (d: Device) => void): () => void;

Defined in: engine/src/input/core.ts:186

Called when lastDevice() changes. Returns an unsubscribe.

Parameters

ParameterType
fn(d: Device) => void

Returns

() => void


padPressed()

padPressed(button: 
  | "A"
  | "B"
  | "X"
  | "Y"
  | "LB"
  | "RB"
  | "LT"
  | "RT"
  | "Back"
  | "Start"
  | "LS"
  | "RS"
  | "DUp"
  | "DDown"
  | "DLeft"
  | "DRight"
  | "Home"): boolean;

Defined in: engine/src/input/core.ts:158

Button crossed half-way down / up between the last two update() calls.

Parameters

ParameterType
button| "A" | "B" | "X" | "Y" | "LB" | "RB" | "LT" | "RT" | "Back" | "Start" | "LS" | "RS" | "DUp" | "DDown" | "DLeft" | "DRight" | "Home"

Returns

boolean


padReleased()

padReleased(button: 
  | "A"
  | "B"
  | "X"
  | "Y"
  | "LB"
  | "RB"
  | "LT"
  | "RT"
  | "Back"
  | "Start"
  | "LS"
  | "RS"
  | "DUp"
  | "DDown"
  | "DLeft"
  | "DRight"
  | "Home"): boolean;

Defined in: engine/src/input/core.ts:159

Parameters

ParameterType
button| "A" | "B" | "X" | "Y" | "LB" | "RB" | "LT" | "RT" | "Back" | "Start" | "LS" | "RS" | "DUp" | "DDown" | "DLeft" | "DRight" | "Home"

Returns

boolean


pointers()

pointers(): ReadonlyMap<number, PointerState>;

Defined in: engine/src/input/core.ts:135

Live pointers, by id.

Returns

ReadonlyMap<number, PointerState>


pressed()

pressed(code: string): boolean;

Defined in: engine/src/input/core.ts:149

Went down / up since the previous update().

Parameters

ParameterType
codestring

Returns

boolean


released()

released(code: string): boolean;

Defined in: engine/src/input/core.ts:151

Went up since the previous update().

Parameters

ParameterType
codestring

Returns

boolean


setVirtual()

setVirtual(name: string, value: number): void;

Defined in: engine/src/input/core.ts:165

Set a value on the virtual channel, read by touch:<name> action sources. On-screen controls call this; a non-zero value also marks touch as the last device. 0 removes the entry.

Parameters

ParameterType
namestring
valuenumber

Returns

void


unlock()

unlock(): void;

Defined in: engine/src/input/core.ts:175

Release pointer lock if this surface holds it.

Returns

void


update()

update(): void;

Defined in: engine/src/input/core.ts:180

Once per frame, before reading: advances edges and polls the gamepad.

Returns

void


virtual()

virtual(name: string): number;

Defined in: engine/src/input/core.ts:167

Current virtual value, 0 when unset.

Parameters

ParameterType
namestring

Returns

number


virtualPressed()

virtualPressed(name: string): boolean;

Defined in: engine/src/input/core.ts:169

Became non-zero / returned to zero between the last two update() calls.

Parameters

ParameterType
namestring

Returns

boolean


virtualReleased()

virtualReleased(name: string): boolean;

Defined in: engine/src/input/core.ts:170

Parameters

ParameterType
namestring

Returns

boolean

On this page