Skip to content

@bloopjs/toodle


@bloopjs/toodle / textures/Bundles / Bundles

Class: Bundles

Defined in: textures/Bundles.ts:45

Bundles manages texture bundle registration and atlas coordinate lookups.

This is a pure TypeScript class with no WebGPU dependencies, suitable for use with custom renderers (e.g., WebGL fallbacks).

Constructors

Constructor

new Bundles(options): Bundles

Defined in: textures/Bundles.ts:50

Parameters

options

BundlesOptions = {}

Returns

Bundles

Accessors

atlasSize

Get Signature

get atlasSize(): number

Defined in: textures/Bundles.ts:465

The atlas size used for coordinate calculations.

Returns

number


textureIds

Get Signature

get textureIds(): string[]

Defined in: textures/Bundles.ts:284

A read-only array of all currently loaded texture ids.

Returns

string[]


textures

Get Signature

get textures(): ReadonlyMap<string, AtlasCoords[]>

Defined in: textures/Bundles.ts:277

A read-only map of all currently loaded textures.

Returns

ReadonlyMap<string, AtlasCoords[]>

Methods

addTextureEntry()

addTextureEntry(id, coords): void

Defined in: textures/Bundles.ts:329

Add atlas coordinates for a texture entry. Used by AssetManager.loadAtlas for textures loaded outside of bundles.

Parameters

id

string

The texture ID

coords

AtlasCoords

The atlas coordinates to add

Returns

void


getAtlasCoords()

getAtlasCoords(id): AtlasCoords[]

Defined in: textures/Bundles.ts:294

Get the atlas coordinates for a texture.

Parameters

id

string

The texture ID

Returns

AtlasCoords[]

Array of atlas coordinates (may have multiple if texture exists in multiple atlases)


getBundleAtlases()

getBundleAtlases(bundleId): CpuTextureAtlas[]

Defined in: textures/Bundles.ts:454

Get the CPU-side atlas data for a bundle. Useful for custom renderers that need access to the raw atlas data.

Parameters

bundleId

string

The bundle ID

Returns

CpuTextureAtlas[]

Array of CPU texture atlases


getBundleAtlasIndices()

getBundleAtlasIndices(bundleId): number[]

Defined in: textures/Bundles.ts:171

Get the atlas indices for a loaded bundle.

Parameters

bundleId

string

The bundle ID

Returns

number[]

Array of atlas indices, or empty array if not loaded


getCroppedSize()

getCroppedSize(id): Size

Defined in: textures/Bundles.ts:409

Get the cropped size of a texture.

Parameters

id

string

The texture ID

Returns

Size

The cropped size in pixels


getLoadedBundleIds()

getLoadedBundleIds(): string[]

Defined in: textures/Bundles.ts:441

Get all loaded bundle IDs.

Returns

string[]


getRegisteredBundleIds()

getRegisteredBundleIds(): string[]

Defined in: textures/Bundles.ts:434

Get all registered bundle IDs.

Returns

string[]


getSize()

getSize(id): Size

Defined in: textures/Bundles.ts:394

Get the original (uncropped) size of a texture.

Parameters

id

string

The texture ID

Returns

Size

The original size in pixels


getTextureOffset()

getTextureOffset(id): Vec2

Defined in: textures/Bundles.ts:378

Get the crop offset for a texture.

Parameters

id

string

The texture ID

Returns

Vec2

The crop offset vector


getTextureRegion()

getTextureRegion(id): undefined | TextureRegion

Defined in: textures/Bundles.ts:364

Get the texture region (without atlas index) for a texture.

Parameters

id

string

The texture ID

Returns

undefined | TextureRegion

The texture region, or undefined if not found


hasBundle()

hasBundle(bundleId): boolean

Defined in: textures/Bundles.ts:151

Check if a bundle is registered.

Parameters

bundleId

string

The bundle ID to check

Returns

boolean


hasTexture()

hasTexture(id): boolean

Defined in: textures/Bundles.ts:427

Check if a texture exists.

Parameters

id

string

The texture ID

Returns

boolean

True if the texture is registered


isBundleLoaded()

isBundleLoaded(bundleId): boolean

Defined in: textures/Bundles.ts:160

Check if a bundle is loaded.

Parameters

bundleId

string

The bundle ID to check

Returns

boolean


markBundleLoaded()

markBundleLoaded(bundleId, atlasIndices?): void

Defined in: textures/Bundles.ts:199

Mark a bundle as loaded and populate texture lookups. For standalone usage (without AssetManager).

Parameters

bundleId

string

The bundle to mark as loaded

atlasIndices?

number[]

Array of atlas indices, one per atlas. If not provided, indices are auto-assigned sequentially.

Returns

void


registerAtlasBundle()

registerAtlasBundle(bundleId, opts): Promise<string>

Defined in: textures/Bundles.ts:61

Register a bundle of pre-baked texture atlases.

Parameters

bundleId

string

Unique identifier for this bundle

opts

AtlasBundleOpts

Atlas bundle options containing atlas definitions

Returns

Promise<string>

The bundle ID


registerDynamicBundle()

registerDynamicBundle(bundleId, atlases): void

Defined in: textures/Bundles.ts:138

Register a bundle with pre-built CPU texture atlases. Used internally by AssetManager for texture bundles that require GPU packing.

Parameters

bundleId

string

Unique identifier for this bundle

atlases

CpuTextureAtlas[]

Pre-built CPU texture atlases

Returns

void


removeTextureEntriesForAtlas()

removeTextureEntriesForAtlas(atlasIndex): void

Defined in: textures/Bundles.ts:344

Remove texture entries for a specific atlas index. Used by AssetManager.unloadAtlas.

Parameters

atlasIndex

number

The atlas index to remove entries for

Returns

void


setAtlasCoords()

setAtlasCoords(id, coords): void

Defined in: textures/Bundles.ts:311

Set the atlas coordinates for a texture. This allows for UV precision adjustments.

Parameters

id

string

The texture ID

coords

AtlasCoords

The atlas coordinates to set

Returns

void


setBundleLoaded()

setBundleLoaded(bundleId, atlasIndices): void

Defined in: textures/Bundles.ts:183

Mark a bundle as loaded without populating texture lookups. Used when texture lookups are already populated via loadAtlas.

Parameters

bundleId

string

The bundle to mark as loaded

atlasIndices

number[]

Array of atlas indices, one per atlas

Returns

void


unloadBundle()

unloadBundle(bundleId): void

Defined in: textures/Bundles.ts:244

Unmark a bundle as loaded and remove texture lookups.

Parameters

bundleId

string

The bundle to unload

Returns

void