FrameGraph

class FrameGraph

The frame tree, plus a one-tick pose cache.

Resolution walks to the root and composes, which is O(depth) — depth is 4-6 in practice. The cache exists because a tick resolves the same handful of frames for every entity in them, and evaluate for an orbital frame runs a Kepler solve.

frame.ts:121

Members

constructor

constructor() → FrameGraph

chain

chain(id: FrameId) → readonly FrameId[]

Root-first chain down to id, for devtools breadcrumbs.

idFrameId
Undocumented

define

define(definition: FrameDefinition) → void
definitionFrameDefinition
Undocumented

get

idFrameId
Undocumented

has

has(id: FrameId) → boolean
idFrameId
Undocumented

ids

ids() → readonly FrameId[]

invalidate

invalidate() → void

Drop cached poses. Call after mutating a dynamic frame's closure state.

pose

pose(id: FrameId, t: number) → FramePose

Resolve id to universe coordinates at simulation time t.

idFrameId
Undocumented
tnumber
Undocumented

remove

remove(id: FrameId) → void
idFrameId
Undocumented