ExperimentalExperimentalCalled every frame with the current renderer state.
The renderer state snapshot for this frame. Contains Three.js objects
(threeJSScene, renderer, cameraObject, directionalLight, ambientLight),
the geometry scene graph (geometryScene), and all ECS entity maps
(geometry3DMap, geometry3DsInScene, geometry2DMap, geometry2DsInScene).
Super experimental — this API may change or be removed in any release without notice. Do not depend on it in production.
Interface for plugins that hook into the Mappedin render loop.
Plugins receive the full renderer state every frame, providing direct access to the Three.js scene, camera, renderer, lighting, and all ECS geometry entities. Use this to inject custom Three.js objects, apply per-frame effects, or read scene state.
Lifecycle
update()is called every frame during the finalization phase of the render loop (after camera, path, and 2D systems have run, but beforeDrawSystemapplies style changes and beforepaint()draws the frame).Standalone vs. Overlay Mode
state.threeJSScenestate.geometryScenePerformance
update()runs on the main thread every frame. Avoid heavy computation, allocations, or GPU-blocking operations. Gate one-time work behind an initialization flag.Example
Adding a custom Three.js mesh
Example
Reading ECS component data
Example
Mutating ECS styles (mark dirty to apply)