Interface: Models3DConfig
GLB catalog and placements for declarative 3D models.
Properties
assets
assets: GLBAssetConfig[];enabled?
optional enabled?: boolean;When false, GLB loading is skipped even if assets / placements are set.
globalOffset?
optional globalOffset?: GLBModelOffset;Global offset in map-space meters applied to all GLB models as a group. Applied on a container
group with no scale, so values are always in metres regardless of individual asset scales. Useful to
align the entire model collection with a map layer, for example y: 0.7 to sit on top of a
fill-extrusion-height: 0.7 surface.
Stacks with per-asset GLBAssetConfig.defaultModelOffset and per-placement GLBPlacementConfig.offset.
lights?
optional lights?: Scene3DLightConfig[];Default lights for the Three.js context that renders these GLBs. When omitted, the SDK uses built-in defaults.
lod?
optional lod?: Models3DLodConfig;Optional zoom-based level-of-detail. When set, models are unloaded from memory below the configured zoom and reloaded when zoomed back in — freeing VRAM while the camera is far out. Opt-in; omit to keep models resident at every zoom.
placements
placements: GLBPlacementConfig[];routeTransparency?
optional routeTransparency?: RouteTransparencyConfig;Default route-based transparency applied to every placement. Can be overridden per asset (GLBAssetConfig.routeTransparency) or per placement (GLBPlacementConfig.routeTransparency). When omitted at all levels, a route crossing a model does not change its opacity (feature off).
zoomTransparency?
optional zoomTransparency?: ZoomTransparencyConfig;Default zoom-based transparency applied to every placement. Can be overridden per asset (GLBAssetConfig.zoomTransparency) or per placement (GLBPlacementConfig.zoomTransparency). When omitted at all levels, models stay fully opaque at every zoom (current behavior).