Environment, metadata, and bridges
This chapter covers lighting and attribution, feature metadata / vectors, advanced render paths (splat / voxel / VT capture), and optional coexistence bridges.
Sun / sky
CesiumSunSkyComponent drives directional light, SkyAtmosphere, and Stars from date-time and georeference longitude (auto time zone optional). Useful for correct sun angles on real sites.
| Field group | Essentials |
|---|---|
| Date / time | Year / month / day / hour; optional tick-advance with time scale |
| Time zone | Hours offset; Auto time zone from longitude (default on); optional DST window |
| Position | Use georeference for position (default on) or explicit lat/lon; north offset |
| Light | Link intensity to sun; day intensity lux; dusk band |
| Atmosphere | Anchor atmosphere to planet center (default on); aerial perspective view-distance scale; height / Rayleigh / Mie knobs |
| Stars / IBL | Night stars exposure / radius; day/night IBL exposure |
| SkyLight capture | Off by default; recapture on sun-angle / interval thresholds |
Bus: CesiumSunSkyBus (set date, solar time, aerial scale, anchor flag, …).
Credits
CesiumCreditSystemComponent aggregates ion / Bing / etc. attribution. Full on-screen UI needs the ImGui Gem (lower-left overlay + “Data attribution” popup with rich text / images / links). Without ImGui, credits fall back to logs—prefer showing attribution whenever third-party geospatial data is visible.
Tilesets and overlays can force Show credits on screen. Soft-reference a credit entity from the tileset (Credit system entity ID) when you run multiple credit systems.
Bus: CesiumCreditBus.
Feature metadata and picking
| Feature | Component / bus | Use |
|---|---|---|
| Feature metadata schema | CesiumFeaturesMetadataComponent | Aggregate EXT_structural_metadata / mesh features; optional auto-update description + GPU encoding description |
| Ray pick properties | CesiumMetadataRequestBus | Click-to-query building / feature attributes from hits |
| Features Metadata Viewer | Tools menu / Inspector | Editor tree of property tables, feature ID sets, textures & attributes |
| Tile lifecycle | CesiumTileLifecycleBus | Per-tile load / unload hooks |
Editor helper: Auto Fill Encoding / Refresh Encoded Metadata on the Features Metadata component when using GPU metadata sampling materials (cesiumMetadata.* bindings).
GeoJSON documents
CesiumGeoJsonDocumentComponent loads GeoJSON from URL, local file, or ion. Query features and geometry through CesiumGeoJsonDocumentBus and the public object model (CesiumGeoJsonObjectHandle / CesiumGeoJsonFeatureHandle, CesiumVectorStyle).
Rasterize the same document with a GeoJSON Raster Overlay set to FromDocument and pointing at this entity — see
Overlays and clipping.
Voxel and Gaussian splat
Tileset-level switches (see Georeference and tilesets):
- Gaussian splatting — on by default when content has
KHR_gaussian_splatting; configure SH degree. - Voxel rendering — off by default; enable raymarch and optionally attach CesiumVoxelMetadataComponent (Auto Fill shading description, Generate Voxel Shader into project Assets).
Debug: cesium_drawVoxelGrids. Bus: CesiumVoxelBus for per-cell sampling.
Virtual texture capture
CesiumVtCaptureComponent captures an orthographic volume of Cesium geometry into a runtime virtual-texture style attachment for custom materials. Configure capture volume, resolution, and material layer name. Bus: CesiumVtCaptureBus (IsCaptureActive, UV transform, attachment name).
Coexistence bridges
Optional bridge components compile only when sibling Gems are in the build:
| Component | Role |
|---|---|
CesiumWorldStreamingBridgeComponent | Cell events can warm Cesium LOD cameras |
CesiumTerrainBridgeComponent | Prefer Terrain height / diagnose boundary deltas |
CesiumNavMeshBridgeComponent | Rebuild Recast / Navigation3D regions as tiles stream (Create nav meshes on the tileset) |
Registry keys (under /O3DE/Cesium3DTiles/Bridge/): WorldStreamingMode, TerrainMode — values Off / Bridge / Coexist. Default Coexist = diagnostics only, no ownership change.
Console dumps: CesiumDumpWsBridgeStats, CesiumDumpTerrainBridgeStats, CesiumDumpNavMeshBridgeStats. Bus overview: CesiumBridgeBus.
Ion geocoder
CesiumIonGeocoderRequestBus runs ion geocode queries with main-thread completion notifications—useful for “fly to place name” tooling.
Next steps
- Configuration and debugging — registry, HTTP, CVars.
- Recipes — end-to-end setups.
- Reference — bus and component list.