Skip to content

ProcessSystem

Defined in: ProcessSystem.ts:36

Built-in system that ticks the "frame"-clock processes of all ProcessComponents on entities in non-paused scenes, plus the frame-clock entries of the engine-global and scene-bound process pools.

ProcessSystem holds all four engine-level pools — engine-global and scene-bound, one of each per clock. ProcessFixedUpdateSystem advances the two fixed-clock pools and every "fixed"-clock entity process.

Runs at Phase.Update with priority 500, ensuring tweened values are fresh before ComponentUpdateSystem (priority 1000) reads them.

new ProcessSystem(): ProcessSystem

ProcessSystem

System.constructor

protected context: EngineContext

Defined in: System.ts:22

Reference to the engine context, set on registration.

System.context


enabled: boolean = true

Defined in: System.ts:19

Whether this system is active.

System.enabled


readonly phase: Update = Phase.Update

Defined in: ProcessSystem.ts:37

The phase this system runs in.

System.phase


readonly priority: 500 = 500

Defined in: ProcessSystem.ts:38

Execution priority within the phase. Lower = earlier. Default: 0.

System.priority


timeScale: number = 1

Defined in: ProcessSystem.ts:41

Global time scale multiplier. Stacks multiplicatively with per-scene timeScale.

_setContext(context): void

Defined in: System.ts:31

Internal

Set the engine context. Called by SystemScheduler when the system is registered.

EngineContext

void

System._setContext


_tickFixedGlobal(dt): void

Defined in: ProcessSystem.ts:186

Internal

Advance the engine-global fixed-clock pool by one fixed step. dt arrives already scaled. Called by ProcessFixedUpdateSystem.

number

void


_tickFixedScene(scene, dt): void

Defined in: ProcessSystem.ts:195

Internal

Advance one scene’s fixed-clock pool by one fixed step. dt arrives already scaled. Called by ProcessFixedUpdateSystem.

Scene

number

void


add(process, options?): Process

Defined in: ProcessSystem.ts:96

Add an engine-global process. Ticked under the global timeScale only; NOT gated by per-scene pause or scaled by per-scene timeScale. Use this for cross-scene effects (e.g. screen-scope filter fades on app.stage) or processes that have no owning scene.

options.clock picks the clock that advances the process (default "frame", rendered-frame time; see ProcessClock). "fixed" advances it on the fixed timestep through ProcessFixedUpdateSystem.

Process

ProcessClock

Process


addForScene(scene, process, options?): Process

Defined in: ProcessSystem.ts:116

Add a process bound to a specific scene’s lifecycle. Ticked only while the scene is active (not paused) and scaled by the scene’s timeScale, exactly like an entity-owned ProcessComponent. Use this for layer or scene-scope effect fades that should pause with the scene.

options.clock picks the clock that advances the process (default "frame", rendered-frame time; see ProcessClock). "fixed" advances it on the fixed timestep through ProcessFixedUpdateSystem. The pool pauses with its scene and follows the scene’s scale on either clock.

Scene

Process

ProcessClock

Process


cancel(tag?): void

Defined in: ProcessSystem.ts:133

Cancel engine-global processes on both clocks, optionally by tag.

string

void


cancelForScene(scene, tag?): void

Defined in: ProcessSystem.ts:139

Cancel every scene-bound process for scene on both clocks, optionally by tag.

Scene

string

void


onRegister(context): void

Defined in: ProcessSystem.ts:51

Called once when the system is registered with the engine.

EngineContext

void

System.onRegister


onUnregister(): void

Defined in: ProcessSystem.ts:66

Called when the system is removed.

void

System.onUnregister


update(dt): void

Defined in: ProcessSystem.ts:144

Called every frame (or every fixed step for FixedUpdate).

number

void

System.update


protected use<T>(key): T

Defined in: System.ts:36

Resolve a service by key, cached after first lookup.

T

ServiceKey<T>

T

System.use