What Is 3D Tiles and How Does It Use glTF?

The 3D Tiles standard is an open specification designed for streaming and rendering massive heterogeneous 3D geospatial datasets over the web. This article explains what the 3D Tiles standard is, how it organizes large-scale environments using spatial indexing, and how it directly integrates glTF (GL Transmission Format) as its primary geometric and visual payload to deliver high-performance graphics efficiently across platforms.

Understanding the 3D Tiles Standard

Developed by Cesium and adopted as a community standard by the Open Geospatial Consortium (OGC), 3D Tiles addresses the challenge of visualizing massive 3D data—such as citywide photogrammetry, BIM/CAD models, terrain, and point clouds—on hardware that cannot load the full dataset into memory at once.

The standard achieves this through Hierarchical Level of Detail (HLOD). A 3D Tiles dataset, known as a tileset, is structured as a spatial tree (such as an octree, quadtree, or k-d tree). Each tile in the hierarchy contains:

  • Bounding Volumes: Mathematical boundaries (boxes, spheres, or geographic regions) that define the spatial extent of the tile.
  • Geometric Error: A metric determining the visual error introduced if the tile is rendered instead of a higher-resolution version, allowing the runtime engine to select the appropriate level of detail based on the camera's distance.
  • Content: The actual 3D payload rendered by the graphics engine.

Clients evaluate these properties against the user's viewport, requesting and rendering only the tiles necessary for the current view, which optimizes memory usage and network bandwidth.

glTF as the Foundational Payload

While 3D Tiles defines the spatial hierarchy and streaming logic, it does not define a new 3D graphics format. Instead, it relies on glTF (GL Transmission Format), an open standard created by the Khronos Group, to deliver the actual 3D geometry, materials, and textures.

Often described as the "JPEG of 3D," glTF minimizes both the file size of 3D assets and the runtime processing needed by the GPU. It stores vertex data, indices, and animations in binary buffers that can be loaded directly into GPU buffers with minimal parsing.

The Evolution from 3D Tiles 1.0 to 1.1

The relationship between 3D Tiles and glTF evolved significantly with the release of 3D Tiles 1.1:

  • 3D Tiles 1.0 (Embedded Containers): In the initial release, 3D Tiles wrapped glTF within custom tile formats. For example, Batched 3D Model (.b3dm) and Instanced 3D Model (.i3dm) embedded a binary glTF file alongside custom batch tables for semantic metadata.
  • 3D Tiles 1.1 (Direct glTF Integration): 3D Tiles 1.1 eliminated these custom container formats. Tiles now directly reference standard glTF or binary glTF (.glb) files as their content payload. This shift unified the ecosystem, allowing developers to use standard glTF pipelines and tools without proprietary wrappers.

Semantic Metadata and Extensions

By adopting glTF natively, 3D Tiles 1.1 leverages the glTF extension ecosystem to handle complex geospatial and engineering requirements.

Through extensions such as EXT_mesh_features and EXT_structural_metadata, arbitrary metadata (such as building IDs, materials, or structural properties from BIM files) can be mapped directly to vertices, instances, or textures within the glTF file. This enables interactive features—such as clicking a building to query its metadata or dynamically restyling features based on attributes—without sacrificing GPU rendering performance.

Summary of Benefits

Combining the 3D Tiles spatial tree with the glTF payload provides a robust framework for geospatial visualization:

  • High Performance: glTF ensures rapid decoding and direct-to-GPU data transfer, while 3D Tiles limits the rendered data to what is visible.
  • Interoperability: Both 3D Tiles (OGC) and glTF (Khronos Group) are open, community-driven standards widely supported across web, desktop, and game engine environments like Unreal Engine and Unity.
  • Flexibility: The architecture decouples the spatial data structure from the graphics rendering pipeline, allowing independent optimization of streaming logic and asset compression.