VisualComponent
Defined in: renderer/src/VisualComponent.ts:117
Shared base for the renderer’s five visual components (Sprite,
AnimatedSprite, Graphics, Text, SplitText). Carries the render-layer field,
lazy effects host, mask lifecycle, scene-tree parenting, and the generic
visible/tint/alpha/interactive vocabulary — every underlying Pixi display
object supports all four directly on Container, so this operates on
renderObject rather than each subclass re-deriving the same three-liner.
Subclasses provide renderObject (their concrete Pixi display object,
created in their own constructor) and call applyVisualOptions once
it exists — options can’t be applied during VisualComponent’s own
constructor since renderObject isn’t assigned yet at that point.
Extends
Section titled “Extends”Component
Extended by
Section titled “Extended by”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new VisualComponent(
layer):VisualComponent
Defined in: renderer/src/VisualComponent.ts:141
Parameters
Section titled “Parameters”string | undefined
Returns
Section titled “Returns”VisualComponent
Overrides
Section titled “Overrides”Component.constructor
Properties
Section titled “Properties”entity
Section titled “entity”entity:
Entity
Defined in: core/dist/index.d.ts:2593
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
readonlyfx:EffectsHost
Defined in: renderer/src/VisualComponent.ts:130
Component-scope effects host. .fx.addEffect(...) attaches a filter to
this component’s render object; the effect is torn down automatically
when the entity or component is destroyed. .fx.findEffect(definition)
recovers the handle for the first matching effect after save/load.
layerName
Section titled “layerName”
readonlylayerName:string
Defined in: renderer/src/VisualComponent.ts:123
renderObject
Section titled “renderObject”
abstractreadonlyrenderObject:DisplayContainer
Defined in: renderer/src/VisualComponent.ts:122
The underlying Pixi display object.
restorePriority
Section titled “restorePriority”
staticrestorePriority:number=30
Defined in: renderer/src/VisualComponent.ts:119
Snapshot restore order. On load, an entity’s components are re-added in
ascending priority, so a component whose onAdd() reads a sibling can
rely on lower-priority siblings being present and initialized.
Undeclared = 100. Engine components reserve 0-99; game and addon
components declare a value only when a sibling onAdd() dependency
requires it. Equal priorities restore in save-time add order.
Subclasses inherit their base class’s priority unless they declare
their own.
Overrides
Section titled “Overrides”Component.restorePriority
Accessors
Section titled “Accessors”Get Signature
Section titled “Get Signature”get alpha():
number
Defined in: renderer/src/VisualComponent.ts:188
Get the container’s alpha (opacity).
Returns
Section titled “Returns”number
Set Signature
Section titled “Set Signature”set alpha(
alpha):void
Defined in: renderer/src/VisualComponent.ts:183
Set the container’s alpha (opacity).
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
blendMode
Section titled “blendMode”Get Signature
Section titled “Get Signature”get blendMode():
BLEND_MODES
Defined in: renderer/src/VisualComponent.ts:198
Get the container’s blend mode.
Returns
Section titled “Returns”BLEND_MODES
Set Signature
Section titled “Set Signature”set blendMode(
mode):void
Defined in: renderer/src/VisualComponent.ts:193
Set how the container combines with what is drawn beneath it.
Parameters
Section titled “Parameters”BLEND_MODES
Returns
Section titled “Returns”void
context
Section titled “context”Get Signature
Section titled “Get Signature”get context():
EngineContext
Defined in: core/dist/index.d.ts:2627
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:2616
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:2608
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:2609
Parameters
Section titled “Parameters”boolean
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Get Signature
Section titled “Get Signature”get mask():
MaskHandle|undefined
Defined in: renderer/src/VisualComponent.ts:280
The currently attached mask handle, if any. Useful after save/load to recover a handle whose caller-side reference went stale.
Returns
Section titled “Returns”MaskHandle | undefined
Get Signature
Section titled “Get Signature”get scene():
Scene
Defined in: core/dist/index.d.ts:2622
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
Get Signature
Section titled “Get Signature”get tint():
number
Defined in: renderer/src/VisualComponent.ts:178
Get the container’s tint color.
Returns
Section titled “Returns”number
Set Signature
Section titled “Set Signature”set tint(
color):void
Defined in: renderer/src/VisualComponent.ts:173
Set the container’s tint color.
Parameters
Section titled “Parameters”ColorSource
Returns
Section titled “Returns”void
visible
Section titled “visible”Get Signature
Section titled “Get Signature”get visible():
boolean
Defined in: renderer/src/VisualComponent.ts:212
Get the requested visibility, whatever the entity’s activeness.
Returns
Section titled “Returns”boolean
Set Signature
Section titled “Set Signature”set visible(
value):void
Defined in: renderer/src/VisualComponent.ts:206
Set the container’s visibility. Written while the entity is dormant, it is remembered and applied when the entity is activated.
Parameters
Section titled “Parameters”boolean
Returns
Section titled “Returns”void
Methods
Section titled “Methods”_applyEnabled()
Section titled “_applyEnabled()”_applyEnabled(
effective):void
Defined in: core/dist/index.d.ts:2681
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
_refreshEnabled()
Section titled “_refreshEnabled()”_refreshEnabled():
void
Defined in: core/dist/index.d.ts:2674
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():
void
Defined in: core/dist/index.d.ts:2668
Internal
Run and clear all registered cleanups. Called by Entity.remove() and Entity._performDestroy() before onRemove/onDestroy.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component._runCleanups
addCleanup()
Section titled “addCleanup()”
protectedaddCleanup(fn):void
Defined in: core/dist/index.d.ts:2662
Register a cleanup function to run when this component is removed or destroyed.
Parameters
Section titled “Parameters”() => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.addCleanup
afterRestore()?
Section titled “afterRestore()?”
optionalafterRestore(data,resolve):void
Defined in: core/dist/index.d.ts:2735
Called after onAdd() during save/load restoration. Apply state that depends on onAdd() having run.
Parameters
Section titled “Parameters”unknown
resolve
Section titled “resolve”Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.afterRestore
applyVisualOptions()
Section titled “applyVisualOptions()”
protectedapplyVisualOptions(options):void
Defined in: renderer/src/VisualComponent.ts:156
Apply the shared visible/tint/alpha/interactive options to
renderObject. Call once from the subclass constructor, after the
concrete Pixi object is created.
Parameters
Section titled “Parameters”options
Section titled “options”Returns
Section titled “Returns”void
clearMask()
Section titled “clearMask()”clearMask():
void
Defined in: renderer/src/VisualComponent.ts:271
Detach and destroy the current mask, if any.
Returns
Section titled “Returns”void
destroyOptions()
Section titled “destroyOptions()”
protecteddestroyOptions():DestroyOptions|undefined
Defined in: renderer/src/VisualComponent.ts:328
Pixi destroy options passed to renderObject.destroy(). Default:
undefined (Pixi’s own defaults). Override for a component whose
destroy must cascade to children (SplitText’s per-segment display
objects).
Returns
Section titled “Returns”DestroyOptions | undefined
fixedUpdate()?
Section titled “fixedUpdate()?”
optionalfixedUpdate(dt):void
Defined in: core/dist/index.d.ts:2720
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
inspectRender()
Section titled “inspectRender()”inspectRender():
object
Defined in: renderer/src/VisualComponent.ts:290
Derived render facet for the Inspector — world-space bounds and the
component’s own (local, non-inherited) visible flag, computed on
demand from the live render object. Not part of serialize(); see
computeRenderFacet for the bounds coordinate space.
Returns
Section titled “Returns”bounds
Section titled “bounds”bounds: {
height:number;width:number;x:number;y:number; } |null
Axis-aligned bounding box of the component’s geometry, in world space (the
same coordinate space the Inspector reports for entity.transform — pixels,
before camera/viewport projection). Measured from the geometry itself, so a
sized-but-hidden object still reports its real box; null means there is no
measurable geometry at all (an empty Graphics, a zero-area object), NOT
that the object is hidden. Read RenderFacetSnapshot.visible for the
hidden/shown state.
visible
Section titled “visible”visible:
boolean
The component’s own (local, non-inherited) visibility flag at snapshot time. A hidden ancestor (e.g. a parent/layer container set invisible) is NOT folded in — read the relevant parent separately if you need the fully resolved on-screen state.
listen()
Section titled “listen()”
protectedlisten<T>(entity,token,handler):void
Defined in: core/dist/index.d.ts:2654
Subscribe to events on any entity, auto-unsubscribe on removal.
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”entity
Section titled “entity”Entity
EventToken<T>
handler
Section titled “handler”(data) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.listen
listenScene()
Section titled “listenScene()”
protectedlistenScene<T>(token,handler):void
Defined in: core/dist/index.d.ts:2660
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: renderer/src/VisualComponent.ts:294
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
onDestroy()
Section titled “onDestroy()”onDestroy():
void
Defined in: renderer/src/VisualComponent.ts:314
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: renderer/src/VisualComponent.ts:310
Called when the component stops being effectively enabled — enabled
went false, the entity (or an ancestor) was deactivated, or the
component is being removed or destroyed. Put live resources to sleep
here; the component is reused afterwards, so do not free anything
onEnable cannot rebuild.
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”Component.onDisable
onEnable()
Section titled “onEnable()”onEnable():
void
Defined in: renderer/src/VisualComponent.ts:306
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
onRemove()?
Section titled “onRemove()?”
optionalonRemove():void
Defined in: core/dist/index.d.ts:2708
Called when the component is removed from an entity.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Component.onRemove
restoreVisual()
Section titled “restoreVisual()”
protectedrestoreVisual(data):void
Defined in: renderer/src/VisualComponent.ts:245
Restore effects and mask from a snapshot’s shared fields. Call from the
subclass’s afterRestore, after the render object is parented.
Parameters
Section titled “Parameters”Pick<VisualComponentData, "effects" | "mask">
Returns
Section titled “Returns”void
serialize()?
Section titled “serialize()?”
optionalserialize():unknown
Defined in: core/dist/index.d.ts:2733
Return a JSON-serializable snapshot of this component’s state. Used by the save system.
Returns
Section titled “Returns”unknown
Inherited from
Section titled “Inherited from”Component.serialize
serializeVisual()
Section titled “serializeVisual()”
protectedserializeVisual():VisualComponentData
Defined in: renderer/src/VisualComponent.ts:221
Serialise the shared layer/visible/tint/alpha/blendMode/interactive/
effects/mask fields. Subclasses spread this into their own Data object
alongside their own-specific fields (texture key, text, anchor, …).
Returns
Section titled “Returns”service()
Section titled “service()”
protectedservice<T>(key):T
Defined in: core/dist/index.d.ts:2644
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
setMask()
Section titled “setMask()”setMask(
factory):MaskHandle
Defined in: renderer/src/VisualComponent.ts:264
Attach a mask to this component’s render object, replacing any existing mask. Returns a handle for inverse toggling, redraw (graphicsMask), or removal. The mask is torn down automatically when the component is destroyed.
Parameters
Section titled “Parameters”factory
Section titled “factory”Returns
Section titled “Returns”sibling()
Section titled “sibling()”
protectedsibling<C>(cls):C
Defined in: core/dist/index.d.ts:2652
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.
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
update()?
Section titled “update()?”
optionalupdate(dt):void
Defined in: core/dist/index.d.ts:2715
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:2635
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