Taos API Reference
    Preparing search index...

    Interface LoadContentOptions

    interface LoadContentOptions {
        device: GPUDevice;
        frame: GeoFrame;
        tileTransform: Mat4d;
        gltfUpAxis: "Y" | "Z";
        lit: boolean;
        lodLevel: number;
        tileCenterEcef?: Vec3d;
        useWorker?: boolean;
        bodyOffset?: Vec3d;
        albedoBoost?: number;
        smoothNormals?: boolean;
        collision?: boolean;
        pickable?: boolean;
        materialTweak?: (mat: PbrMaterial) => void;
        skirtScale?: number;
    }
    Index

    Properties

    device: GPUDevice
    frame: GeoFrame
    tileTransform: Mat4d

    Accumulated f64 tile transform (parent · tile.transform), placing content in ECEF.

    gltfUpAxis: "Y" | "Z"

    'Y' (default — apply Y-up→Z-up) or 'Z' (no correction).

    lit: boolean

    When true, force unlit (KHR_materials_unlit) tile materials to lit so engine lighting / AO / atmosphere / shadows affect them.

    lodLevel: number

    Tile tree depth, recorded on the content for the tile-LOD debug view.

    tileCenterEcef?: Vec3d

    ECEF center of the tile's bounding volume, recorded on the content so it can be located geographically (e.g. for terrain clamping).

    useWorker?: boolean

    When true, decode this tile's geometry on a Worker (off the main thread) via getTileDecodePool; GPU upload + material loading still run here. Falls back to inline decode automatically if the worker pool is unavailable.

    bodyOffset?: Vec3d

    Constant ECEF translation applied between the tile transform and the floating- origin frame, so a body authored about its own center (e.g. the Moon, whose tiles are Moon-centered) is planted at a chosen point in the shared Earth-centric universe. Defaults to (0,0,0) — Earth content needs no offset. The tileset's bounds carry the same offset (see Tileset3D) so SSE/cull stay consistent.

    albedoBoost?: number

    Multiplies each material's base-color (albedo) tint, brightening the content under the same light. Used to make the Moon's physically-dark regolith read bright/ reflective in sunlight. Defaults to 1 (unchanged).

    smoothNormals?: boolean

    For tile primitives that ship without normals (common on 3D-Tiles building meshes), generate area-weighted SMOOTH normals instead of the glTF-spec-default FLAT (per-face) normals. Flat (default) matches the spec and avoids the shading seams smoothing quilts across hard photogrammetry edges.

    collision?: boolean

    Retain a lightweight CPU triangle soup (TileContent.collision: world-baked positions + indices, no normals/uv) for this tile, so an app can build a physics collider from the rendered photogrammetry (e.g. to walk a character on it). Off by default — it costs a positions+indices copy per tile.

    pickable?: boolean

    Retain a CPU pick soup (TileContent.pickMeshes: world positions + indices + per-vertex feature id) + extract the _FEATURE_ID_0/_BATCHID attribute, so a click ray can select a feature. Off by default — costs the extra attribute + a per-tile soup, and forces inline decode (the feature-id attribute isn't carried over the worker path).

    materialTweak?: (mat: PbrMaterial) => void

    Optional per-material hook applied to every PbrMaterial of the tile after the albedo boost, for app-specific look tweaks (e.g. the Moon's reflectance + a night-time emissive glow). Runs once per material at load; the loader marks it dirty afterward.

    skirtScale?: number

    When > 0, generate a radial SKIRT around each primitive's perimeter at decode: a vertical curtain dropped toward the body center that hides the T-junction cracks where this tile abuts a neighbor at a different LOD. 3D-Tiles has no runtime skirts and these terrain b3dm tiles ship none, so the seams are otherwise raw. The depth scales with the tile's relief × this factor (0 = off; 1 = tuned). Only sensible for terrain-like tilesets (a planet surface) — leave 0 for photogrammetry/building tiles. See buildTileSkirts.