ColliderComponent
Defined in: physics/src/ColliderComponent.ts:45
Wraps a Rapier collider. Attach after RigidBodyComponent.
Component ordering: Transform → RigidBodyComponent → ColliderComponent.
Extends
Section titled “Extends”Component
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new ColliderComponent(
config):ColliderComponent
Defined in: physics/src/ColliderComponent.ts:91
Parameters
Section titled “Parameters”config
Section titled “config”Returns
Section titled “Returns”ColliderComponent
Overrides
Section titled “Overrides”Component.constructor
Properties
Section titled “Properties”_colliderHandles
Section titled “_colliderHandles”
readonly_colliderHandles:number[] =[]
Defined in: physics/src/ColliderComponent.ts:50
Internal
Ordered Rapier collider handles, set during onAdd.
_contactFilter
Section titled “_contactFilter”_contactFilter:
ContactFilter|null=null
Defined in: physics/src/ColliderComponent.ts:58
Internal
Active contact filter, read by PhysicsWorld’s pair hook.
_oneWayLanded
Section titled “_oneWayLanded”_oneWayLanded:
Set<string> |null=null
Defined in: physics/src/ColliderComponent.ts:69
Internal
Directed Rapier-handle pairs whose contact with this one-way
platform has started and not yet ended. While a pair is in here the
platform stays solid for it regardless of the position rule — a deep
first-impact penetration must not flip an established landing back to
passable while the solver is still pushing the rider out. Maintained by
PhysicsWorld from collision start/end events and collider removal;
null unless the collider is configured oneWay.
config
Section titled “config”
readonlyconfig:ColliderConfig
Defined in: physics/src/ColliderComponent.ts:47
Collider configuration (shape, sensor, etc.).
entity
Section titled “entity”entity:
Entity
Defined in: core/dist/index.d.ts:4116
Back-reference to the owning entity. Set by the engine when the component is added to an entity. Do not set manually.
Inherited from
Section titled “Inherited from”Component.entity
inspectExclude?
Section titled “inspectExclude?”
staticoptionalinspectExclude?: readonlystring[]
Defined in: core/dist/index.d.ts:4338
Own fields and getters the Inspector leaves out of this component’s reflected state. Use it for bulk data that is not worth a diagnostic copy — a parsed tilemap, a large lookup table. Lists merge down the class chain, so a subclass adds to its base class’s exclusions.
class TilemapComponent extends VisualComponent { static inspectExclude = ["data"];}Inherited from
Section titled “Inherited from”Component.inspectExclude
updatePriority?
Section titled “updatePriority?”
staticoptionalupdatePriority?:number
Defined in: core/dist/index.d.ts:4325
Class-level default for updatePriority: every instance runs at
this priority unless its own updatePriority is written. Undeclared = 0.
Subclasses inherit their base class’s value unless they declare their
own. Declare it on a component whose behavior depends on running after
(or before) a sibling, so the entity that adds it does not have to
control the add order.
class BoundsClamp extends Component { static updatePriority = 10; // after the follow that moves the camera}Inherited from
Section titled “Inherited from”Component.updatePriority
Accessors
Section titled “Accessors”_colliderHandle
Section titled “_colliderHandle”Get Signature
Section titled “Get Signature”get _colliderHandle():
number
Defined in: physics/src/ColliderComponent.ts:53
Internal
First Rapier handle for single-shape access.
Returns
Section titled “Returns”number
_oneWayFilterActive
Section titled “_oneWayFilterActive”Get Signature
Section titled “Get Signature”get _oneWayFilterActive():
boolean
Defined in: physics/src/ColliderComponent.ts:172
Internal
True while the collider’s active filter is still the one
config.oneWay installed — the debug overlay draws one-way visuals
only then, so a custom filter set over the preset isn’t shown as
one-way.
Returns
Section titled “Returns”boolean
colliderCount
Section titled “colliderCount”Get Signature
Section titled “Get Signature”get colliderCount():
number
Defined in: physics/src/ColliderComponent.ts:138
Number of collider shapes attached to this component’s rigid body.
Returns
Section titled “Returns”number
context
Section titled “context”Get Signature
Section titled “Get Signature”get context():
EngineContext
Defined in: core/dist/index.d.ts:4171
Access the EngineContext from the entity’s scene. Throws if the entity is not in a scene.
Returns
Section titled “Returns”EngineContext
Inherited from
Section titled “Inherited from”Component.context
effectiveEnabled
Section titled “effectiveEnabled”Get Signature
Section titled “Get Signature”get effectiveEnabled():
boolean
Defined in: core/dist/index.d.ts:4141
Whether the component is actually running: enabled, on an active
entity, and past onAdd. This is the state onEnable and
onDisable track — read it when a method has to behave one way
live and another way dormant.
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”Component.effectiveEnabled
enabled
Section titled “enabled”Get Signature
Section titled “Get Signature”get enabled():
boolean
Defined in: core/dist/index.d.ts:4133
Whether this component runs. Disabled components are skipped by ComponentUpdateSystem.
Writing this fires onEnable / onDisable when the
effective state changes — enabled && entity.isActive. A component
disabled here stays disabled through a setActive(false) /
setActive(true) cycle on its entity.
Returns
Section titled “Returns”boolean
Set Signature
Section titled “Set Signature”set enabled(
value):void
Defined in: core/dist/index.d.ts:4134
Parameters
Section titled “Parameters”boolean
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.enabled
isDroppingThrough
Section titled “isDroppingThrough”Get Signature
Section titled “Get Signature”get isDroppingThrough():
boolean
Defined in: physics/src/ColliderComponent.ts:640
True while a dropThrough window is active for this collider.
Returns
Section titled “Returns”boolean
Get Signature
Section titled “Get Signature”get scene():
Scene
Defined in: core/dist/index.d.ts:4166
Access the entity’s scene. Throws if the entity is not in a scene.
Prefer this over threading through this.entity.scene in component
code.
Returns
Section titled “Returns”Scene
Inherited from
Section titled “Inherited from”Component.scene
updatePriority
Section titled “updatePriority”Get Signature
Section titled “Get Signature”get updatePriority():
number
Defined in: core/dist/index.d.ts:4159
Where this component runs among its siblings. ComponentUpdateSystem
calls update / fixedUpdate on an entity’s components in ascending
priority; equal priorities run in add order. Undeclared = 0, so a
negative value runs before siblings that keep the default and a positive
value runs after them. Writable at any time, before or after add().
Defaults to the class’s static updatePriority.
class Player extends Entity { setup() { this.add(new Mover()); this.add(new Brain()).updatePriority = -1; // decides before Mover moves }}Returns
Section titled “Returns”number
Set Signature
Section titled “Set Signature”set updatePriority(
value):void
Defined in: core/dist/index.d.ts:4160
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.updatePriority
Methods
Section titled “Methods”_applyEnabled()
Section titled “_applyEnabled()”_applyEnabled(
effective):void
Defined in: core/dist/index.d.ts:4273
Internal
Force an effective-enabled transition, firing the hook on a flip. Used by
Entity for teardown, where enabled and the entity’s activeness both
still read true.
Parameters
Section titled “Parameters”effective
Section titled “effective”boolean
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component._applyEnabled
_detachColliderHandle()
Section titled “_detachColliderHandle()”_detachColliderHandle(
handle):void
Defined in: physics/src/ColliderComponent.ts:161
Internal
Forget one handle after PhysicsWorld removes its body.
Parameters
Section titled “Parameters”handle
Section titled “handle”number
Returns
Section titled “Returns”void
_dispatchCollision()
Section titled “_dispatchCollision()”_dispatchCollision(
event):void
Defined in: physics/src/ColliderComponent.ts:799
Internal
Called by PhysicsWorld during event dispatch.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
_dispatchTrigger()
Section titled “_dispatchTrigger()”_dispatchTrigger(
event):void
Defined in: physics/src/ColliderComponent.ts:810
Internal
Called by PhysicsWorld during event dispatch.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
_effectivePart()
Section titled “_effectivePart()”_effectivePart(
index):ColliderPartConfig
Defined in: physics/src/ColliderComponent.ts:148
Internal
Scaled geometry and placement for one ordered shape.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”_evaluateContactFilter()
Section titled “_evaluateContactFilter()”_evaluateContactFilter(
contact):boolean
Defined in: physics/src/ColliderComponent.ts:778
Internal
Run the contact filter for a candidate pair.
Deliberate exception to the report-and-rethrow rule for developer callbacks: this is called from inside Rapier’s WASM step, and a throw unwinding through WASM mid-step leaves the physics world in an undefined state. The error is caught, reported through the boundary, and the pair falls back to solid — the conservative default.
Reported once per installed filter, not per throw: the filter runs for
every candidate pair every step, and a persistently throwing one would
otherwise log at frame rate and evict everything else from the error
snapshot. setContactFilter re-arms the report.
Parameters
Section titled “Parameters”contact
Section titled “contact”Returns
Section titled “Returns”boolean
_isTornDown()
Section titled “_isTornDown()”_isTornDown():
boolean
Defined in: core/dist/index.d.ts:4254
Internal
Internal: true once this component has been removed or its entity
destroyed. Components are terminal — Entity.add uses this to reject
re-attaching an instance whose cleanups and onDestroy already ran.
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”Component._isTornDown
_markTornDown()
Section titled “_markTornDown()”_markTornDown():
void
Defined in: core/dist/index.d.ts:4260
Internal
Internal: mark this component torn down. Called by Entity.remove() and
Entity._performDestroy() after onDestroy runs.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component._markTornDown
_part()
Section titled “_part()”_part(
index):ColliderPartConfig
Defined in: physics/src/ColliderComponent.ts:143
Internal
Geometry and placement for one ordered collider shape.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”_previousPose()
Section titled “_previousPose()”_previousPose(
index):Readonly<ColliderStepPose> |undefined
Defined in: physics/src/ColliderComponent.ts:153
Internal
This part’s start pose before its last simulated movement.
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”Readonly<ColliderStepPose> | undefined
_refreshEnabled()
Section titled “_refreshEnabled()”_refreshEnabled():
void
Defined in: core/dist/index.d.ts:4266
Internal
Recompute effective enabled-ness from enabled and the entity’s
activeness, firing the hook on a flip.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component._refreshEnabled
_runCleanups()
Section titled “_runCleanups()”_runCleanups(
onError?):void
Defined in: core/dist/index.d.ts:4241
Internal
Run and clear all registered cleanups. Called by Entity.remove() and Entity._performDestroy() before onDestroy.
Parameters
Section titled “Parameters”onError?
Section titled “onError?”(error) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component._runCleanups
_scaleDirection()
Section titled “_scaleDirection()”_scaleDirection(
direction):object
Defined in: physics/src/ColliderComponent.ts:696
Internal
Apply signed world scale to a body-local direction.
Parameters
Section titled “Parameters”direction
Section titled “direction”number
number
Returns
Section titled “Returns”object
x:
number
y:
number
_syncScale()
Section titled “_syncScale()”_syncScale():
void
Defined in: physics/src/ColliderComponent.ts:648
Internal
Apply the Transform’s world scale before a physics step.
Returns
Section titled “Returns”void
addCleanup()
Section titled “addCleanup()”
protectedaddCleanup(fn):void
Defined in: core/dist/index.d.ts:4229
Register a cleanup function to run when this component is removed or
destroyed, before onDestroy. Use it for what listen, listenScene
and listenBus do not cover, such as an unsubscribe from a custom
emitter.
Parameters
Section titled “Parameters”() => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.addCleanup
contactWith()
Section titled “contactWith()”contactWith(
other,options?):ColliderContact|undefined
Defined in: physics/src/ColliderComponent.ts:388
The closest points between this collider and other at their current
poses, or undefined when they are further apart than prediction
(pixels, default 0: touching or overlapping only) or either component
has no live collider. A geometric query on the shapes, so it answers for
sensors, which never get contact data on their events, and for a pair
that never collided.
With selfShapeIndex / otherShapeIndex it measures that one shape
pair; pass the indices from a TriggerEvent or CollisionEvent to
measure the pair that fired it. Without them, compound colliders report
the closest pair among all their parts. An index outside the component’s
parts throws, as does other from a different scene’s physics world.
collider.onTrigger((ev) => { const contact = collider.contactWith(ev.otherCollider, ev); if (contact) spawnSparks(contact.otherPoint, contact.normal);});Parameters
Section titled “Parameters”ColliderComponent
options?
Section titled “options?”otherShapeIndex?
Section titled “otherShapeIndex?”number
prediction?
Section titled “prediction?”number
selfShapeIndex?
Section titled “selfShapeIndex?”number
Returns
Section titled “Returns”ColliderContact | undefined
destroy()
Section titled “destroy()”destroy():
void
Defined in: core/dist/index.d.ts:4247
End this component’s life on its own — the same as
entity.remove(SomeClass), without having to name its own class from
inside itself, which breaks under subclassing.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.destroy
dropThrough()
Section titled “dropThrough()”dropThrough(
seconds):void
Defined in: physics/src/ColliderComponent.ts:628
Let this body fall through one-way platforms for the next seconds
seconds of simulated time — the standard down-jump. Only this body is
affected; other bodies standing on the same platform stay supported.
When the window expires mid-platform, the body keeps falling until it
is clear and lands on the next solid side it reaches from above.
Callable before the component is added; the window then starts when the collider is created.
Parameters
Section titled “Parameters”seconds
Section titled “seconds”number
Returns
Section titled “Returns”void
fixedUpdate()?
Section titled “fixedUpdate()?”
optionalfixedUpdate(dt):void
Defined in: core/dist/index.d.ts:4310
Called every fixed timestep by the built-in ComponentUpdateSystem.
Parameters
Section titled “Parameters”number
Fixed timestep in seconds, scaled by scene and entity timeScale.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.fixedUpdate
getOverlapping()
Section titled “getOverlapping()”Call Signature
Section titled “Call Signature”getOverlapping<
T>(filter):Entity&T[]
Defined in: physics/src/ColliderComponent.ts:342
Return all entities whose colliders currently overlap this one, optionally filtered.
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”filter
Section titled “filter”EntityFilter & object
Returns
Section titled “Returns”Entity & T[]
Call Signature
Section titled “Call Signature”getOverlapping(
filter?):Entity[]
Defined in: physics/src/ColliderComponent.ts:345
Return all entities whose colliders currently overlap this one, optionally filtered.
Parameters
Section titled “Parameters”filter?
Section titled “filter?”EntityFilter
Returns
Section titled “Returns”Entity[]
getOverlappingComponents()
Section titled “getOverlappingComponents()”getOverlappingComponents<
C>(cls):C[]
Defined in: physics/src/ColliderComponent.ts:358
Return components of type C from all overlapping entities that have one.
Type Parameters
Section titled “Type Parameters”C extends Component
Parameters
Section titled “Parameters”ComponentClass<C>
Returns
Section titled “Returns”C[]
listen()
Section titled “listen()”
protectedlisten<T>(source,token,handler):void
Defined in: core/dist/index.d.ts:4211
Subscribe to events from an entity or a state machine, auto-unsubscribe on removal.
this.listen(this.entity, Hurt, ({ dir }) => this.knockback(dir));this.listen(brain.mode, brain.mode.events.entered, ({ state }) => this.anim.play(state),);Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”source
Section titled “source”EventSource
EventToken<T>
handler
Section titled “handler”(data) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.listen
listenBus()
Section titled “listenBus()”
protectedlistenBus<K>(event,handler):void
Defined in: core/dist/index.d.ts:4222
Subscribe to an engine EventBus event, auto-unsubscribe on removal.
Throws when the entity is not in a scene, like listenScene.
Type Parameters
Section titled “Type Parameters”K extends keyof EngineEvents
Parameters
Section titled “Parameters”K
handler
Section titled “handler”(data) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.listenBus
listenScene()
Section titled “listenScene()”
protectedlistenScene<T>(token,handler):void
Defined in: core/dist/index.d.ts:4217
Subscribe to scene-level events, auto-unsubscribe on removal. Handlers
fire for bubbled entity events (entity = source) and scene.emit
events (entity = undefined).
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”EventToken<T>
handler
Section titled “handler”(data, entity?) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.listenScene
onAdd()
Section titled “onAdd()”onAdd():
void
Defined in: physics/src/ColliderComponent.ts:178
Called when the component is added to an entity. Validate dependencies
here — a service, a sibling component, a render layer — and throw when
one is missing. The throw is attributed to this component, recorded in
Inspector.getErrors().callbackErrors, and rethrown, so it reaches the
caller of entity.add() unchanged.
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”Component.onAdd
onCollision()
Section titled “onCollision()”onCollision(
handler): () =>void
Defined in: physics/src/ColliderComponent.ts:281
Subscribe to collision events. Returns an unsubscribe function.
Parameters
Section titled “Parameters”handler
Section titled “handler”(e) => void
Returns
Section titled “Returns”() => void
onDestroy()
Section titled “onDestroy()”onDestroy():
void
Defined in: physics/src/ColliderComponent.ts:271
Called when the component is destroyed (entity destroyed or component removed).
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”Component.onDestroy
onDisable()
Section titled “onDisable()”onDisable():
void
Defined in: physics/src/ColliderComponent.ts:232
Take the collider out of the simulation, keeping its Rapier allocation.
Rapier does not re-emit a collision-start for a collider disabled and
re-enabled while still overlapping something — a reused entity dropped
onto an existing contact gets no onCollision for it.
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”Component.onDisable
onEnable()
Section titled “onEnable()”onEnable():
void
Defined in: physics/src/ColliderComponent.ts:251
Called when the component becomes effectively enabled — enabled is
true and the entity is active. Fires right after onAdd() for a
component added to an active entity, and again on every later flip.
Bring live resources back online here (unpause a sound, show a display
object, re-enable a physics body). Game-state reset does not belong here:
the hook sees whatever state the component held while dormant.
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”Component.onEnable
onTrigger()
Section titled “onTrigger()”onTrigger(
handler): () =>void
Defined in: physics/src/ColliderComponent.ts:291
Subscribe to trigger events (sensor). Returns an unsubscribe function.
Parameters
Section titled “Parameters”handler
Section titled “handler”(e) => void
Returns
Section titled “Returns”() => void
service()
Section titled “service()”
protectedservice<T>(key):T
Defined in: core/dist/index.d.ts:4188
Lazy proxy-based service resolution. Can be used at field-declaration time:
readonly input = this.service(InputManagerKey);The actual resolution is deferred until first property access.
Type Parameters
Section titled “Type Parameters”T extends object
Parameters
Section titled “Parameters”ServiceKey<T>
Returns
Section titled “Returns”T
Inherited from
Section titled “Inherited from”Component.service
setContactFilter()
Section titled “setContactFilter()”setContactFilter(
filter):void
Defined in: physics/src/ColliderComponent.ts:610
Set (or clear, with null) this collider’s contact filter — a per-pair
veto that decides each physics step whether a candidate contact with
another collider is solid (true) or passes through (false). Replaces
the built-in filter a oneWay config installed. Callable before the
component is added — the filter is armed at collider creation.
The filter runs inside the physics step, so no contact normal exists
yet; the ContactCandidate exposes the two sides’ positions and
velocities instead. The candidate is a single reused instance — read
what you need inside the filter and copy it; a stored reference shows
other pairs’ values after the call returns. A filter that throws is
reported through the error boundary once (per installed filter) and
the pair stays solid.
The component does not own a custom filter’s lifetime. Reinstall it when game code reconstructs the collider.
Parameters
Section titled “Parameters”filter
Section titled “filter”ContactFilter | null
Returns
Section titled “Returns”void
setFriction()
Section titled “setFriction()”setFriction(
friction):void
Defined in: physics/src/ColliderComponent.ts:499
Set this component’s friction on every collider part. Values must be
finite and at least 0. Callable before the component is added; the value
is also kept when setSensor recreates the Rapier colliders.
Parameters
Section titled “Parameters”friction
Section titled “friction”number
Returns
Section titled “Returns”void
setRestitution()
Section titled “setRestitution()”setRestitution(
restitution):void
Defined in: physics/src/ColliderComponent.ts:481
Set this component’s restitution on every collider part. Values must be
finite and at least 0. Callable before the component is added; the value
is also kept when setSensor recreates the Rapier colliders.
Parameters
Section titled “Parameters”restitution
Section titled “restitution”number
Returns
Section titled “Returns”void
setSensor()
Section titled “setSensor()”setSensor(
sensor):void
Defined in: physics/src/ColliderComponent.ts:452
Make this collider a sensor, or solid again. Callable before the component is added — the updated config is applied at collider creation.
On a live collider the Rapier collider is recreated with the new flag:
every pair it is currently in ends with a stop (or exit) at the next
step and re-forms as the new kind, so a solid box flipped to a sensor
falls through what it was resting on. The body’s getMass() is
unchanged, the contact filter and every subscription survive, and the
collider handle changes. A call that does not change the flag does
nothing. Dev builds warn when the flip leaves handlers of the silenced
kind (onCollision on a sensor, onTrigger on a solid) registered.
Parameters
Section titled “Parameters”sensor
Section titled “sensor”boolean
Returns
Section titled “Returns”void
setShape()
Section titled “setShape()”setShape(
shape,options?):void
Defined in: physics/src/ColliderComponent.ts:540
Replace one collider shape in place, optionally changing its body-local
offset in the same operation. Shape dimensions and offset coordinates use
authored pixels like ColliderConfig; the current Transform scale applies
to both. Omitting offset preserves the selected part’s current offset.
The Rapier collider, its body attachment, and every
onCollision/onTrigger subscription survive the swap.
The body keeps the mass it already had. A collider is a collision proxy,
not a measure of how much matter is there, so a character that crouches
takes the same knockback from applyImpulse as one standing up. Pass
recomputeMass: true when the new shape means genuinely more or less
matter, and the body’s mass should come back from density × the new
shape.
Shape or offset changes can leave the collider overlapping other geometry. Check the region the target collider will newly occupy before applying the change. For a feet-origin character standing from a crouch, that region is the headroom between the crouched and standing top edges.
Callable before the component is added — the updated config is applied at collider creation. A pre-add call cannot recompute mass: the body takes its mass from the new shape at creation anyway.
A bad shape, index, offset coordinate, or scaled result throws before anything is stored. Supplied offset coordinates are copied, so later caller mutation cannot change the selected part.
Parameters
Section titled “Parameters”options?
Section titled “options?”index?
Section titled “index?”number
offset?
Section titled “offset?”Vec2Like
recomputeMass?
Section titled “recomputeMass?”boolean
Returns
Section titled “Returns”void
sibling()
Section titled “sibling()”
protectedsibling<C>(cls):C
Defined in: core/dist/index.d.ts:4199
Lazy proxy-based sibling component resolution. Can be used at field-declaration time:
readonly anim = this.sibling(AnimatedSpriteComponent);The actual resolution is deferred until first property access. The
reference passes instanceof cls before it resolves, so an engine API
that checks the type of what it is handed (camera.follow(this.transform))
accepts it.
Type Parameters
Section titled “Type Parameters”C extends Component
Parameters
Section titled “Parameters”ComponentClass<C>
Returns
Section titled “Returns”C
Inherited from
Section titled “Inherited from”Component.sibling
stateMachine()
Section titled “stateMachine()”
protectedstateMachine<S>(states,initial,options?):StateMachine<S>
Defined in: core/dist/index.d.ts:4235
Create a state machine whose hooks and event handlers are attributed to this component when they throw. The machine can be declared as a field because service lookup waits until a hook runs.
Type Parameters
Section titled “Type Parameters”S extends string
Parameters
Section titled “Parameters”states
Section titled “states”StateDefinitions<S>
initial
Section titled “initial”NoInfer<S>
options?
Section titled “options?”StateMachineOptions
Returns
Section titled “Returns”StateMachine<S>
Inherited from
Section titled “Inherited from”Component.stateMachine
update()?
Section titled “update()?”
optionalupdate(dt):void
Defined in: core/dist/index.d.ts:4305
Called every frame by the built-in ComponentUpdateSystem.
Parameters
Section titled “Parameters”number
Frame delta in seconds, scaled by scene and entity timeScale.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.update
protecteduse<T>(key):T
Defined in: core/dist/index.d.ts:4179
Resolve a service by key, cached after first lookup. Scene-scoped values
(registered via scene._registerScoped) take precedence over engine
scope. A key declared with scope: "scene" that falls back to engine
scope emits a one-shot dev warning — almost always signals a missed
beforeEnter hook.
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”ServiceKey<T>
Returns
Section titled “Returns”T
Inherited from
Section titled “Inherited from”Component.use
Coding agents: fetch https://yage.dev/llms.txt first and prefer the Markdown references it links over these HTML pages. This page's Markdown counterpart is /llms/packages/physics.md.