Interface: System<S, Q>
Defined in: packages/core/src/ecs/system.ts:46
System base interface wired to the IWSDK World, renderer, and XR runtime.
Remarks
createSystem(queries, schema)returns a class that implements this interface.- Config values are exposed as reactive Signals on
this.config.<key>. - Common world resources are available as readonly properties (
player,input,scene,camera,renderer,visibilityState). - Use
cleanupFuncs.push(() => ...)to register teardown callbacks.
Extends
System<S,Q>
Extended by
TransformSystemSlideSystemTeleportSystemTurnSystemLocomotionSystemVisibilitySystemFollowSystemScreenSpaceUISystemGrabSystemInputSystemCanvasPointerSystemLevelSystemSceneUnderstandingSystemEnvironmentRaycastSystemPhysicsSystemCameraSystemDepthSensingSystemXRLayerSystemPanelUISystemEnvironmentSystemAudioSystem
Type Parameters
S
S extends SystemSchema
Q
Q extends SystemQueries
Properties
camera
readonlycamera:PerspectiveCamera
Defined in: packages/core/src/ecs/system.ts:63
cleanupFuncs
readonlycleanupFuncs: () =>void[]
Defined in: packages/core/src/ecs/system.ts:66
Returns
void
config
config:
SystemConfigSignals<S>
Defined in: packages/core/src/ecs/system.ts:49
Overrides
ElicsSystem.config
createEntity()
createEntity: () =>
Entity
Defined in: packages/core/src/ecs/system.ts:81
Returns
Entity
Overrides
ElicsSystem.createEntity
globals
globals:
Record<string,any>
Defined in: packages/core/src/ecs/system.ts:54
Overrides
ElicsSystem.globals
input
readonlyinput:InputManager
Defined in: packages/core/src/ecs/system.ts:61
isPaused
isPaused:
boolean
Defined in: packages/core/src/ecs/system.ts:48
Overrides
ElicsSystem.isPaused
player
readonlyplayer:XROrigin
Defined in: packages/core/src/ecs/system.ts:58
playerEntity
readonlyplayerEntity:Entity
Defined in: packages/core/src/ecs/system.ts:59
playerHeadEntity
readonlyplayerHeadEntity:Entity
Defined in: packages/core/src/ecs/system.ts:60
priority
priority:
number
Defined in: packages/core/src/ecs/system.ts:53
Overrides
ElicsSystem.priority
queries
queries:
Record<keyofQ,Query>
Defined in: packages/core/src/ecs/system.ts:50
Overrides
ElicsSystem.queries
queryManager
queryManager:
QueryManager
Defined in: packages/core/src/ecs/system.ts:52
Overrides
ElicsSystem.queryManager
renderer
readonlyrenderer:WebGLRenderer
Defined in: packages/core/src/ecs/system.ts:64
scene
readonlyscene:Scene
Defined in: packages/core/src/ecs/system.ts:62
visibilityState
readonlyvisibilityState:Signal<VisibilityState>
Defined in: packages/core/src/ecs/system.ts:65
world
world:
World
Defined in: packages/core/src/ecs/system.ts:51
Overrides
ElicsSystem.world
xrFrame
xrFrame:
XRFrame
Defined in: packages/core/src/ecs/system.ts:56
xrManager
xrManager:
WebXRManager
Defined in: packages/core/src/ecs/system.ts:55
Methods
init()
init():
void
Defined in: packages/core/src/ecs/system.ts:68
Returns
void
Overrides
ElicsSystem.init
play()
play():
void
Defined in: packages/core/src/ecs/system.ts:79
Returns
void
Overrides
ElicsSystem.play
stop()
stop():
void
Defined in: packages/core/src/ecs/system.ts:80
Returns
void
Overrides
ElicsSystem.stop
update()
update(
delta,time):void
Defined in: packages/core/src/ecs/system.ts:78
Per-frame tick. Both arguments are in seconds (Three.js Clock convention), not milliseconds.
Parameters
delta
number
Seconds since the previous frame.
time
number
Accumulated Clock.elapsedTime (seconds since the render loop started ticking the clock); monotonic across frames within a session.
Returns
void
Overrides
ElicsSystem.update