Uploading Data to ion

Whether you have imagery, terrain, 3D buildings, point clouds, or photogrammetry, this guide provides an overview of uploading data to the ion tiling pipeline.

Asset types

Cesium ion accepts a variety data formats and tiles them into one of three types of assets:

3D Tiles
An open specification for streaming massive heterogeneous 3D geospatial datasets. Check out Introducing 3D Tiles to learn more.
Imagery
TMS and WMTS layers created from raster imagery.
Terrain
A quantized-mesh tileset created from raster terrain.

Data formats at a glance

The following table lists accepted data formats and their corresponding asset types:

Format 3D Tiles Terrain Imagery
CityGML (.citygml, .xml, .gml)    
KML/COLLADA (.kml, .kmz)    
LASer (.las, .laz)    
COLLADA (.dae)    
Wavefront OBJ (.obj)    
Floating Point Raster (.flt)  
Arc/Info ASCII Grid (.asc)  
Source Map (.src)  
GeoTIFF (.tiff, .tif)  
Erdas Imagine (.img)  
USGS ASCII DEM and CDED (.dem)  
JPEG (.jpg, .jpeg)    
PNG (.png)    
Cesium Terrain Database (.terraindb)    

While not listed in the above table, sidecar files such as .aux.xml, .tab, .tfw, .wld, .prj, .ovr, .rrd, etc. are also supported for raster source files. When in doubt, upload any additional files that came with your data.

If you have data in a format not listed here and would like to see ion support it, please let us know.

Limitations and caveats

  • The maximum combined size of source data that you can upload for a single asset is 20GB.

  • While you can upload multiple .dae and .obj files when creating a 3D Tiles tileset, each individual file must be under 1GB in size (not including textures). This is also true for .dae files uploaded as part of KML/COLLADA.

  • Model textures are supported as .jpg or .png files, but the resolution for each texture much be at most 16k by 16k pixels.

  • CityGML, raster imagery, and raster terrain must include a coordinate reference system.

  • Raster terrain and imagery must be in a North-up projection.

  • Raster terrain must be a single band of floating point or integer elevations.

  • When terrain clamping is enabled, CityGML will adjust the height of the following object types:

    • CityFurniture
    • GroundSurface
    • Track
    • Road
    • Railway
    • Square
    • ReliefFeature
    • LandUse
    • TransportationObject

ion is constantly improving. If you encounter any of the above limitations in your data, please let us know.

Tiling pipeline errors

If an error is encountered during the tiling process, we try our best to detect exactly what went wrong and report the error to you.

Here is a table of all such errors:

Error Explanation
No valid input files were found None of the uploaded files were compatible with the selected asset type
Invalid coordinate reference system One or more files had an invalid or missing coordinate reference system
Invalid raster terrain Raster terrain must be a single band of floating point or integer elevations
Raster is not North-Up Raster terrain and imagery must be in a North-Up projection
The tiling pipeline has timed out The tiling process took more than 24 hours to complete

We’re always happy to hear from you

If you need help, want to report an issue, or just want to say hi, you can open an issue on the ion community github repository or feel free to email Tim at tim@cesium.com.