Stream massive textured 3D models over the web

Tile your photogrammetry models from OBJ or COLLADA into 3D Tiles for efficient streaming and visualization with CesiumJS.

As the creators of 3D Tiles we leverage its full potential to ensure a lightweight and smooth streaming experience, even on mobile devices!

Upload your photogrammetry models for tiling on Cesium ion, or use the on-premises 3D Tiling Pipeline Command Line Interface (CLI). The 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.

Control level of detail with mesh decimation

The 3D Tiling Pipeline preserves all source level detail. For efficient streaming, it generates intermediate levels of detail (LODs) for geometry and textures that accurately approximate the original data. The result is city-scale models that load in seconds instead of minutes.

The produced tileset includes a precise geometric error which allows viewers like CesiumJS to dynamically show the right level of detail at any given view.

Drag the slider to see how the original geometry with ~120k triangles looks when reduced to ~10k triangles. Texture data was reduced by 85%.

Learn more about geometry simplification

Smoother streaming with adaptive subdivision

The 3D Tiling Pipeline produces optimized tilesets for both sparse landscapes and densely packed cities. Models spread across numerous files can be stitched together seamlessly with unified texture atlases.

Our subdivision algorithm adapts to the given input data so that tiles are balanced in terms of geometry and texture data. Getting this balance right is what allows CesiumJS to stream tiles quickly without overloading memory and GPU resources.

Adaptive tiling produces tilesets that are much more optimized for the web.

Load tiles faster with cutting-edge compression

Opt in for additional optimizations across the Cesium platform.

Draco for geometry

Google's Draco compression is 3D topology-aware and reduces geometry sizes by up to 90% without compromising visual quality, performing better than general-purpose algorithms like Gzip.

Decoding in CesiumJS is fast by using WebAssembly and decoding in parallel on the CPU and GPU.

Learn more about Draco compression in Cesium

WebP for images

WebP images are on average 30% smaller in size than JPEG and PNG images of the same quality — even with transparency.

WebP is the image format designed by Google for the web and is ideal for most modern browsers.

Learn more about WebP in Cesium

Easy to use

The 3D Tiling Pipeline brings together all the algorithms needed to convert your large photogrammetry models to an efficient tileset for streaming in an easy-to-use configurable CLI that can be run with a single command.

High performance

The photogrammetry tiling pipeline uses multithreaded acceleration, giving it a significant performance advantage.

Our out-of-core implementation allows it to handle data upwards of half a billion triangles. The produced tile sizes are tuned for efficient network traffic.

Read about adaptive subdivision and performance results in this blog post.


The 3D Tiling Pipeline performs a robust preprocessing step to detect the optimal configuration settings for your data. No need to waste time digging through layers of configuration.

The pipeline gracefully handles edge cases such as degenerate triangles, outliers and out-of-bounds texture coordinates. Large datasets work well even on commodity hardware.

Technical Resources

Check out the full documentation for the on-premises 3D Tiling Pipeline.

Custom solutions

We provide custom tiling pipelines and services for your 3D data so you can focus on developing your CesiumJS app.

Interested in On-Premise 3D Tiling?

Email Tim Rivenbark for a demo.