Skip to main content

Class: AssetTracker

Defined in: assets/tracker.ts:10

Collects asset requests emitted during a frame render pass and maintains their frame-range entries. Call start before rendering a frame and end after; use the request methods inside the render to register each asset needed.

Constructors

Constructor

new AssetTracker(assetCatalog): AssetTracker

Defined in: assets/tracker.ts:12

Parameters

assetCatalog

AssetCatalog

Returns

AssetTracker

Accessors

assets

Get Signature

get assets(): ReadonlyMap<string, AssetRecord>

Defined in: assets/tracker.ts:40

Returns

ReadonlyMap<string, AssetRecord>


audioRequests

Get Signature

get audioRequests(): readonly AudioRequest[]

Defined in: assets/tracker.ts:41

Returns

readonly AudioRequest[]


catalog

Get Signature

get catalog(): AssetCatalog

Defined in: assets/tracker.ts:16

Returns

AssetCatalog

Methods

addAudioRequest()

addAudioRequest(req): void

Defined in: assets/tracker.ts:48

Add an audio playback request. Stored by reference so mutations from stop() are reflected when audioRequests is read after the build. Deduplicated by id. Called from Sound.prepare.

Parameters

req

AudioRequest

Returns

void


clear()

clear(): void

Defined in: assets/tracker.ts:199

Clear all tracked entries (including loaders) without releasing the instance.

Returns

void


clearAudio()

clearAudio(): void

Defined in: assets/tracker.ts:67

Clear audio requests accumulated for the current scene. Call after reading audioRequests for each scene.

Returns

void


discardOutside()

discardOutside(startFrame, endFrame): void

Defined in: assets/tracker.ts:190

Remove all tracked entries whose frame ranges fall entirely outside [startFrame, endFrame].

Parameters

startFrame

number

endFrame

number

Returns

void


dispose()

dispose(): void

Defined in: assets/tracker.ts:210

Release all state; the instance should not be used after this call.

Returns

void


end()

end(): void

Defined in: assets/tracker.ts:80

Mark the end of a frame render pass.

Returns

void


requestAudio()

requestAudio(src): void

Defined in: assets/tracker.ts:55

Register an audio file for loading at the current frame (frame-range caching, like requestImage).

Parameters

src

string

Returns

void


requestFont()

requestFont(fontFamily, fontWeight): void

Defined in: assets/tracker.ts:177

Register a font face needed at the current frame, keyed by family only.

The key is deliberately not family@weight: loadFont registers the whole family at once (every weight file), and continuous/variable weight is rendered via the layout's fontVariations axis — never via a per-weight file. Including the weight in the key would mint a distinct asset entry for every frame of a weight tween (Inter@437.2, Inter@482.9, …), exploding the asset map and re-dispatching a load per weight on every prefetch tick. Keying by family collapses all of those to one stable entry.

Parameters

fontFamily

string

fontWeight

string

Returns

void


requestImage()

requestImage(src, width?, height?): void

Defined in: assets/tracker.ts:111

Register an image asset needed at the current frame, tracking the maximum rendered size.

Parameters

src

string

width?

number = 0

height?

number = 0

Returns

void


requestLoader()

requestLoader(key, load): void

Defined in: assets/tracker.ts:25

Register an opaque async loader needed at the current frame, tracked on the timeline by key so the AssetManager runs it once its cache window opens and disposes it when the window closes. Deduped by key (like requestFont by family): the first registration's load callback is kept and its frame range extends as later frames re-request the same key.

Parameters

key

string

load

LoaderFn

Returns

void


requestVideo()

requestVideo(src, width?, height?, trimStart?, trimEnd?): void

Defined in: assets/tracker.ts:135

Register a video asset needed at the current frame, tracking the maximum rendered size.

Parameters

src

string

width?

number = 0

height?

number = 0

trimStart?

number = 0

trimEnd?

number

Returns

void


start()

start(frame): void

Defined in: assets/tracker.ts:75

Mark the beginning of a frame render pass so request methods know the current frame.

Parameters

frame

number

Returns

void