API reference
Every public class, method, and event in @codexo/exojs. Generated from source.
classPointer
Unified mouse / touch / pen pointer. Wraps a single browser `PointerEvent.pointerId` and writes its state (position, buttons, pressure, tilt, etc.) into the engine's shared channels buffer so it can be polled by Input bindings or read directly by interaction-aware scene nodes. Coordinates are stored in the application's logical space - `app.width` / `app.height` units (`0..app.width` × `0..app.height`), matching node positions, the 2-argument View.screenToWorld, and the active camera. The CSS-pixel event coordinates are mapped through the canvas's display rect, so the value is independent of Application.pixelRatio, of the render resolution, and of however the canvas is scaled for display: a click at its right edge always reads `app.width`, whichever sizing policy is in play. A point outside the canvas maps outside `0..app.width` accordingly. The channel writes are normalized to 0..1 (position, size, twist, tilt) for backend-agnostic sampling. Pointers are owned by the InputSystem, which assigns them a slot index in 0..15 (see maxPointers) and exposes their per-slot channel offsets via the Pointer class namespace constants.
import { Pointer } from '@codexo/exojs'Unified mouse / touch / pen pointer. Wraps a single browser `PointerEvent.pointerId` and writes its state (position, buttons, pressure, tilt, etc.) into the engine's shared channels buffer so it can be polled by Input bindings or read directly by interaction-aware scene nodes.
Coordinates are stored in the application's logical space - `app.width` / `app.height` units (`0..app.width` × `0..app.height`), matching node positions, the 2-argument View.screenToWorld, and the active camera. The CSS-pixel event coordinates are mapped through the canvas's display rect, so the value is independent of Application.pixelRatio, of the render resolution, and of however the canvas is scaled for display: a click at its right edge always reads `app.width`, whichever sizing policy is in play. A point outside the canvas maps outside `0..app.width` accordingly. The channel writes are normalized to 0..1 (position, size, twist, tilt) for backend-agnostic sampling.
Pointers are owned by the InputSystem, which assigns them a slot index in 0..15 (see maxPointers) and exposes their per-slot channel offsets via the Pointer class namespace constants.
new(event: PlatformPointerEventA pointer contact. Field-for-field a subset of the DOM's `PointerEvent`, carrying the identity, position, geometry, tilt, pressure and button state the engine'…, app: ApplicationTop-level engine instance. Owns the canvas, render backend, scene-stack controller, the core systems (input, interaction, audio, coroutines, tweens, animations…, platform: PlatformAdapterEverything the engine touches outside its own state: the drawing surface's focus, cursor, touch-action and geometry, pointer capture, gamepad polling, document…, channels: Float32Array, slotIndex: number): Pointerdestroy(): voidhandleRelease(event: PlatformPointerEventA pointer contact. Field-for-field a subset of the DOM's `PointerEvent`, carrying the identity, position, geometry, tilt, pressure and button state the engine'…): { closedPress: boolean; maxDistance: number }id: numbertype: stringbuttons: numbercancelled: booleandown: booleanentered: booleanexited: booleanheight: numberisPrimary: booleanmaxDistanceFromPress: numbermoved: booleanpressed: booleanpressure: numberreleased: booleanrotation: numberslotIndex: numbertiltX: numbertiltY: numbertwist: numberwidth: numberx: numbery: number