Skip to content

Documentation / @ripl/core / Renderer

Class: Renderer ​

Defined in: packages/core/src/core/renderer.ts:185

Drives the animation loop via requestAnimationFrame, managing per-element transitions and rendering the scene each frame.

Extends ​

Constructors ​

Constructor ​

new Renderer(scene, options?): Renderer

Defined in: packages/core/src/core/renderer.ts:234

Parameters ​

ParameterType
sceneScene
options?RendererOptions

Returns ​

Renderer

Overrides ​

EventBus.constructor

Properties ​

PropertyModifierTypeDefault valueDescriptionInherited fromDefined in
autoStartpublicbooleantrueWhether the renderer starts its animation loop automatically on construction.-packages/core/src/core/renderer.ts:200
autoStoppublicbooleantrueWhether the renderer stops the loop when idle (no active transitions and the pointer has left).-packages/core/src/core/renderer.ts:202
parent?publicEventBus<RendererEventMap>undefinedThe parent event bus that emitted events bubble up to, if any.EventBus.parentpackages/core/src/core/event-bus.ts:107
defaultKeyreadonlytypeof defaultKeyundefinedThe key under which resources are retained when no explicit key is provided.EventBus.defaultKeypackages/core/src/core/disposer.ts:11

Accessors ​

$events ​

Get Signature ​

get $events(): keyof RendererEventMap[]

Defined in: packages/core/src/core/renderer.ts:210

The event types a renderer can emit. See EventBus.$events.

Returns ​

keyof RendererEventMap[]

Overrides ​

EventBus.$events


debug ​

Get Signature ​

get debug(): Required<RendererDebugOptions>

Defined in: packages/core/src/core/renderer.ts:225

The resolved debug overlay options currently in effect. Assigning a new value (true for all overlays, false for none, or a partial RendererDebugOptions object) replaces the full set; unspecified flags reset to their defaults, matching the constructor's debug option semantics.

Returns ​

Required<RendererDebugOptions>

Set Signature ​

set debug(value): void

Defined in: packages/core/src/core/renderer.ts:229

Parameters ​
ParameterType
valueboolean | RendererDebugOptions
Returns ​

void


isBusy ​

Get Signature ​

get isBusy(): boolean

Defined in: packages/core/src/core/renderer.ts:205

Whether there are any active transitions in progress.

Returns ​

boolean

Methods ​

destroy() ​

destroy(): void

Defined in: packages/core/src/core/renderer.ts:643

Stops the renderer and destroys all event subscriptions.

Returns ​

void

Overrides ​

EventBus.destroy


dispose() ​

protected dispose(key?): void

Defined in: packages/core/src/core/disposer.ts:25

Disposes all resources under the given key, or all resources if no key is provided.

Parameters ​

ParameterType
key?PropertyKey

Returns ​

void

Inherited from ​

EventBus.dispose


emit() ​

Call Signature ​

emit<TEvent>(event): TEvent

Defined in: packages/core/src/core/event-bus.ts:185

Emits an event, invoking all matching handlers and bubbling to the parent if applicable. Handlers for the event's own type run first, then EVENT_WILDCARD subscriptions.

Type Parameters ​
Type ParameterDefault type
TEvent extends Event<undefined>Event<undefined>
Parameters ​
ParameterType
eventTEvent
Returns ​

TEvent

Inherited from ​

EventBus.emit

Call Signature ​

emit<TEvent>(type, data): Event<RendererEventMap[TEvent]>

Defined in: packages/core/src/core/event-bus.ts:186

Emits an event, invoking all matching handlers and bubbling to the parent if applicable. Handlers for the event's own type run first, then EVENT_WILDCARD subscriptions.

Type Parameters ​
Type Parameter
TEvent extends keyof RendererEventMap
Parameters ​
ParameterType
typeTEvent
dataRendererEventMap[TEvent]
Returns ​

Event<RendererEventMap[TEvent]>

Inherited from ​

EventBus.emit


has() ​

has(type): boolean

Defined in: packages/core/src/core/event-bus.ts:123

Returns whether there are any listeners registered for the given event type. Wildcard subscriptions (EVENT_WILDCARD) are not listeners for any concrete type, so a bus observed only through the wildcard still reports false here.

Parameters ​

ParameterType
typekeyof RendererEventMap

Returns ​

boolean

Inherited from ​

EventBus.has


off() ​

off<TEvent>(type, handler): void

Defined in: packages/core/src/core/event-bus.ts:144

Removes a previously registered handler for the given event type.

Type Parameters ​

Type Parameter
TEvent extends keyof RendererEventMap

Parameters ​

ParameterType
typeTEvent
handlerEventHandler<RendererEventMap[TEvent]>

Returns ​

void

Inherited from ​

EventBus.off


on() ​

on<TEvent>(type, handler, options?): Disposable

Defined in: packages/core/src/core/event-bus.ts:131

Subscribes a handler to the given event type and returns a disposable for cleanup. Pass EVENT_WILDCARD to receive every event emitted on the bus regardless of type.

Type Parameters ​

Type Parameter
TEvent extends keyof RendererEventMap

Parameters ​

ParameterType
typeTEvent
handlerEventHandler<RendererEventMap[TEvent]>
options?EventSubscriptionOptions

Returns ​

Disposable

Inherited from ​

EventBus.on


once() ​

once<TEvent>(type, handler, options?): Disposable

Defined in: packages/core/src/core/event-bus.ts:159

Subscribes a handler that is automatically removed after it fires once.

Type Parameters ​

Type Parameter
TEvent extends keyof RendererEventMap

Parameters ​

ParameterType
typeTEvent
handlerEventHandler<RendererEventMap[TEvent]>
options?EventSubscriptionOptions

Returns ​

Disposable

Inherited from ​

EventBus.once


retain() ​

protected retain(value, key?): void

Defined in: packages/core/src/core/disposer.ts:14

Registers a disposable resource under an optional key for later cleanup.

Parameters ​

ParameterTypeDefault value
valueDisposableundefined
keyPropertyKeyDisposer.defaultKey

Returns ​

void

Inherited from ​

EventBus.retain


start() ​

start(): void

Defined in: packages/core/src/core/renderer.ts:453

Starts the animation loop if it is not already running.

Returns ​

void


stop() ​

stop(): void

Defined in: packages/core/src/core/renderer.ts:470

Stops the animation loop, cancels pending frames, and clears all transitions.

Returns ​

void


transition() ​

transition<TElement>(element, options?): Transition

Defined in: packages/core/src/core/renderer.ts:495

Schedules an animated transition for one or more elements, returning a Transition that resolves when all complete.

Type Parameters ​

Type Parameter
TElement extends Element<Partial<BaseState>, ElementEventMap>

Parameters ​

ParameterType
elementOneOrMore<TElement>
options?RendererTransitionOptionsArg<TElement>

Returns ​

Transition