Intermact API Reference / @intermact/core / Scene3D
Class: Scene3D
Defined in: packages/core/src/scene/scene3d.ts:40
Minimal 3D Scene (design.md §10): registration + build-pass orchestration, mirroring Scene2D. Composes a SceneHost over the RuntimeState union, so 3D objects animate through the same seekable timeline machinery as 2D ones.
Constructors
Constructor
new Scene3D(
id,props?,registries?):Scene3D
Defined in: packages/core/src/scene/scene3d.ts:46
Parameters
id
string
props?
Scene3DProps = {}
registries?
Registries = globalRegistries
Registry bundle for custom-animation resolution (default: global, §18).
Returns
Scene3D
Properties
coordinate
readonlycoordinate:CoordinateTransform3D
Defined in: packages/core/src/scene/scene3d.ts:43
Coordinate transforms over the scene domain (design.md §7.2, §10).
id
readonlyid:string
Defined in: packages/core/src/scene/scene3d.ts:47
kind
readonlykind:"scene-3d"
Defined in: packages/core/src/scene/scene3d.ts:41
props
readonlyprops:Scene3DProps={}
Defined in: packages/core/src/scene/scene3d.ts:48
Methods
buildStoryboard()
buildStoryboard():
Storyboard
Defined in: packages/core/src/scene/scene3d.ts:149
Finalize the accumulated timeline.
Returns
commit()
commit(...
animations):void
Defined in: packages/core/src/scene/scene3d.ts:134
Apply immediate (duration-0) changes.
Parameters
animations
...Animation[]
Returns
void
getAxes()
getAxes(
props,transform?):RegisteredAxes3D
Defined in: packages/core/src/scene/scene3d.ts:112
Create and register 3D coordinate axes (design.md §9.1). Returns a RegisteredAxes3D so visibility/motion use the standard object animation API; handle.c2p/p2c map data coordinates to world space.
Parameters
props
transform?
Transform3D = {}
Returns
getInitialStates()
getInitialStates():
ReadonlyMap<string,RuntimeState>
Defined in: packages/core/src/scene/scene3d.ts:164
Baseline runtime states keyed by id.
Returns
ReadonlyMap<string, RuntimeState>
getInitialStatesPristine()
getInitialStatesPristine():
ReadonlyMap<string,RuntimeState>
Defined in: packages/core/src/scene/scene3d.ts:172
Pristine baseline states captured at registration, before compile-time baseline patches (design.md §17 serialization).
Returns
ReadonlyMap<string, RuntimeState>
getObjects()
getObjects():
ReadonlyMap<string,IMObject>
Defined in: packages/core/src/scene/scene3d.ts:159
Object definitions keyed by id (for snapshot building).
Returns
ReadonlyMap<string, IMObject>
getParents()
getParents():
ReadonlyMap<string,string>
Defined in: packages/core/src/scene/scene3d.ts:103
Parent links keyed by child id (for snapshot world-transform composition).
Returns
ReadonlyMap<string, string>
getTimelineOps()
getTimelineOps(): readonly
TimelineOp[]
Defined in: packages/core/src/scene/scene3d.ts:154
Ordered build-pass op-log for serialization (design.md §17).
Returns
readonly TimelineOp[]
group3D()
group3D(
children,transform?):RegisteredObject3D
Defined in: packages/core/src/scene/scene3d.ts:93
Group registered objects under a new transform-only parent (design.md §9.3). Returns the parent so the whole group can be moved/animated together.
Parameters
children
readonly RegisteredObject3D[]
transform?
Transform3D = {}
Returns
marker()
marker(
name):void
Defined in: packages/core/src/scene/scene3d.ts:144
Place a named marker at the current cursor.
Parameters
name
string
Returns
void
play()
play(...
animations):Promise<PlaybackResult>
Defined in: packages/core/src/scene/scene3d.ts:129
Build-pass: append animations in parallel and advance the cursor.
Parameters
animations
...Animation[]
Returns
Promise<PlaybackResult>
register()
register(
object,transform?):RegisteredObject3D
Defined in: packages/core/src/scene/scene3d.ts:57
Register a 3D object definition with an optional initial transform.
Parameters
object
transform?
Transform3D = {}
Returns
registerCamera()
registerCamera(
props?):RegisteredCamera3D
Defined in: packages/core/src/scene/scene3d.ts:73
Register a camera into the scene (design.md §10.1). The camera is backed by a transform node so its eye/orientation are part of the timeline.
Parameters
props?
Camera3DProps = {}
Returns
registerEmpty()
registerEmpty(
transform?):RegisteredObject3D
Defined in: packages/core/src/scene/scene3d.ts:65
Register a transform-only empty node (for group3D hierarchies).
Parameters
transform?
Transform3D = {}
Returns
setParent()
setParent(
child,parent):void
Defined in: packages/core/src/scene/scene3d.ts:85
Parent child under parent (design.md §9.3); the Player composes world transforms at snapshot time.
Parameters
child
parent
RegisteredObject3D | null
Returns
void
wait()
wait(
duration):Promise<void>
Defined in: packages/core/src/scene/scene3d.ts:139
Hold for duration seconds on the timeline.
Parameters
duration
number
Returns
Promise<void>