Stream Massive Cities Over the Web
Use Cesium ion to tile your CityGML or KML/COLLADA into 3D Tiles for efficient streaming on any device with CesiumJS.
As the creators of 3D Tiles, we leverage its full potential at every step in our pipeline to handle millions of textured buildings and features.
The Command Line Interface (CLI) is easy to integrate into any platform, including Linux, Windows, AWS, and Azure. It's built from the ground up for performance and optimized for the best visual experience and precision.
Analyze Metadata with Interactive Styling
The Cesium ion pipeline preserves metadata from CityGML and KML/COLLADA. These become queryable and can be used to style 3D tilesets using the 3D Tiles Styling Language .
Once data is tiled, it's easier to do real-time analysis, from determining optimal solar installations to mapping the growth of cities over time.
Clamp Buildings to Terrain
Accurately clamping CityGML and KML/COLLADA datasets to the underlying terrain is crucial for applications such as city planning, flood modeling, and line of sight analysis.
Our terrain clamping algorithm finds the best fit to avoid artifacts such as floating or sunken buildings, even over steep slopes. You can be confident that what you're seeing corresponds to the ground truth.
Easy to Use
Cesium ion brings together all the algorithms needed to convert from raw datasets to an efficient tileset for streaming in an easy-to-use, configurable CLI that can be run with a single command.
Computationally intensive steps are multithreaded, from the initial parsing to the terrain clamping and tiling, giving the pipeline a significant performance advantage. It scales up using all available CPU cores.
Out-of-core memory management handles any size dataset, even on lower-end hardware.
To optimize load times, geometry can be compressed using Google Draco; this compression is 3D topology-aware, yielding better compression ratios than general-purpose compression.
The NYC CityGML was compressed from 4 GB down to 215 MB.
Decoding in CesiumJS is fast, using WebAssembly and done in parallel with web workers.
Millions of Buildings
Massive CityGML and KML/COLLADA datasets composed of millions of buildings, trees, and features are optimized into 3D tilesets with varying levels of resolution, geometry and texture batching, and instancing for reduced CPU and GPU overhead.
This all saves bandwidth, improves performance, and minimizes memory usage so you can visualize massive cities even on a mobile device.
Cities come in all shapes and sizes, with sprawling suburbs and dense neighborhoods, which means there often isn't one optimal tile size.
Our pipeline computes non-uniform tiles that take into account geometry and texture distribution in the dataset, yielding a balanced tileset and going far beyond traditional uniform 2D tiling approaches to ensure efficient streaming.
Tiles can even overlap and fit around buildings instead of splitting them.
We know the community uses Cesium to make real world decisions, and that's why precision is at the core of everything we do.
Cesium ion outputs a precise geometric error so you can be confident about the accuracy at each level of detail. The terrain clamping step makes no compromises with accuracy. We preserve the highest resolution data at the leaf tiles so nothing is lost.