3d-tiles-renderer

May 22, 2026 · View on GitHub

npm version build

JavaScript renderer implementation for the 3D Tiles format with support for both Three.js and Babylon.js. The renderer supports most of the 3D Tiles spec features with a few exceptions. For a list of available data sets and generation tools see the 3d Tiles resources list.

If a tileset or geometry does not load or render properly please make an issue! Example data is needed for adding and testing features. See the Feature Complete Milestone for information on which features are not yet implemented.

Getting Started

Installation

npm install 3d-tiles-renderer --save

API

PackageReference
3d-tiles-renderer/coreAPI Reference
3d-tiles-renderer/threeUsage Guide · API Reference
3d-tiles-renderer/babylonjsUsage Guide · API Reference
3d-tiles-renderer/r3fUsage Guide · API Reference

Plugins

PackageReference
3d-tiles-renderer/three/pluginsPlugin Guide · API Reference
3d-tiles-renderer/core/pluginsAPI Reference

Examples

The following examples use Three.js. Babylon.js demos are also available for Mars and Google Photorealistic Tiles.

See the Three.js usage guide or Babylon.js usage guide for setup details with each engine.

ExampleDescription
Core
Dingo Gap MarsMultiple tilesets
Kitchen SinkAll options and features
VRRendering in VR
External Tiles Providers ¹
Cesium Ion 3D TilesStandard Cesium Ion tileset
Cesium Ion LunarLunar surface tiles
Cesium Ion MarsMars surface tiles
Google PhotorealisticGoogle Photorealistic Tiles
Google GlobeGoogle Globe Tiles
Customization
Custom MaterialUsing a custom material
Offscreen ShadowsShadows from offscreen tiles
Texture OverlaysAlternate texture overlays
Plugins
MetadataTile metadata
Fade TransitionTile LoD fade transition
Deep ZoomDeep Zoom Image format
TMS / XYZTMS, XYZ map tiles
WMTSWMTS map tiles
WMSWMS map tiles
Quantized MeshQuantized mesh with overlays
Load RegionLoading tiles in region volumes
GeoJSONGeoJSON overlays
Vector TilesMapbox Vector Tiles and Protomap Tiles overlays

¹ Requires a Google Tiles API Key or Cesium Ion API Key

Community Resources

Here is a reference to existing 3DTilesRendererJS integrations:

  • three-geospatial: Clouds and atmosphere rendering via a three.js geospatial rendering modules, alongside 3DTilesRendererJS.
  • 3D Tiles in MapLibre Guide: Official example showing how to render 3D tiles using a synced Three.js layer.
  • Giro3D: Framework for visualizing and interacting with heterogenous geospatial data in the browser, 2D, 2.5D and 3D data.
  • iTowns: Framework designed for the efficient visualization, navigation, and interaction with 2D and 3D geospatial data on the web.
  • threepipe Plugin: Plugin for the threepipe rendering framework integrating 3DTilesRendererJS.
  • 3DBAG Viewer: Web viewer for the 3DBAG dataset, a nationwide 3D model of all buildings in the Netherlands built with roofer.
  • Babylon.js Guide: Official documention on integrating 3DTilesRendererJS into your Babylon.js project.
  • Community Plugins: Additional community-maintained threejs plugins for 3DTilesRendererJS.

LICENSE

The software is available under the Apache V2.0 license.

Copyright © 2020 California Institute of Technology. ALL RIGHTS RESERVED. United States Government Sponsorship Acknowledged. Neither the name of Caltech nor its operating division, the Jet Propulsion Laboratory, nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.