Catalog npm
Back to packageRELEASE DETAILS

0.4.25

npm

3d-tiles-renderer

https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/specification

3d-tiles3dtilesb3dmbabylonjscesiumgeometrygltfgraphicsr3frenderingterrainthreejs
Published21 May 2026
Direct dependencies36
Transitive dependenciesNot calculated

README

Current package documentation

3d-tiles-renderer

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
PLATEAUPLATEAU city data over Cesium World Terrain
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
PotreePotree point cloud 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 documentation on integrating 3DTilesRendererJS into your Babylon.js project.
  • Community Plugins: Additional community-maintained threejs plugins for 3DTilesRendererJS.

Gotchas

Some behaviors to be aware of when configuring the renderer:

  • Cache limits are hard caps. No new tiles load once the LRUCache reaches maxSize or maxBytesSize. If the tiles needed for the current view do not fit then coarser tiles are displayed and refinement stops. Monitor lruCache.cachedBytes and lruCache.isFull() and raise maxBytesSize or errorTarget when a view needs more detail than fits.

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.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 43

Native requirements
36 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
pbf
Environment
{
  "local_name": "pbf",
  "alias": false,
  "peer_metadata": null
}
^4.0.1development
leva
Environment
{
  "local_name": "leva",
  "alias": false,
  "peer_metadata": null
}
^0.10.0development
vite
Environment
{
  "local_name": "vite",
  "alias": false,
  "peer_metadata": null
}
^6.2.2development
jsdoc
Environment
{
  "local_name": "jsdoc",
  "alias": false,
  "peer_metadata": null
}
^4.0.5development
three
Environment
{
  "local_name": "three",
  "alias": false,
  "peer_metadata": null
}
^0.170.0development
cesium
Environment
{
  "local_name": "cesium",
  "alias": false,
  "peer_metadata": null
}
^1.132.0development
eslint
Environment
{
  "local_name": "eslint",
  "alias": false,
  "peer_metadata": null
}
^9.0.0development
vitest
Environment
{
  "local_name": "vitest",
  "alias": false,
  "peer_metadata": null
}
^4.0.15development
globals
Environment
{
  "local_name": "globals",
  "alias": false,
  "peer_metadata": null
}
^16.5.0development
lil-gui
Environment
{
  "local_name": "lil-gui",
  "alias": false,
  "peer_metadata": null
}
^0.21.0development
pmtiles
Environment
{
  "local_name": "pmtiles",
  "alias": false,
  "peer_metadata": null
}
^4.3.2development
@eslint/js
Environment
{
  "local_name": "@eslint/js",
  "alias": false,
  "peer_metadata": null
}
^9.0.0development
typescript
Environment
{
  "local_name": "typescript",
  "alias": false,
  "peer_metadata": null
}
^5.6.0development
@types/node
Environment
{
  "local_name": "@types/node",
  "alias": false,
  "peer_metadata": null
}
^24.3.0development
@types/react
Environment
{
  "local_name": "@types/react",
  "alias": false,
  "peer_metadata": null
}
^19.0.0development
@types/three
Environment
{
  "local_name": "@types/three",
  "alias": false,
  "peer_metadata": null
}
^0.170.0development
concurrently
Environment
{
  "local_name": "concurrently",
  "alias": false,
  "peer_metadata": null
}
^6.2.1development
postprocessing
Environment
{
  "local_name": "postprocessing",
  "alias": false,
  "peer_metadata": null
}
^6.36.4development
@babylonjs/core
Environment
{
  "local_name": "@babylonjs/core",
  "alias": false,
  "peer_metadata": null
}
^8.47.2development
@types/react-dom
Environment
{
  "local_name": "@types/react-dom",
  "alias": false,
  "peer_metadata": null
}
^19.0.0development
@react-three/drei
Environment
{
  "local_name": "@react-three/drei",
  "alias": false,
  "peer_metadata": null
}
^10.0.0development
typescript-eslint
Environment
{
  "local_name": "typescript-eslint",
  "alias": false,
  "peer_metadata": null
}
^8.48.1development
@babylonjs/loaders
Environment
{
  "local_name": "@babylonjs/loaders",
  "alias": false,
  "peer_metadata": null
}
^8.47.2development
@react-three/fiber
Environment
{
  "local_name": "@react-three/fiber",
  "alias": false,
  "peer_metadata": null
}
^9.0.0development
eslint-config-mdcs
Environment
{
  "local_name": "eslint-config-mdcs",
  "alias": false,
  "peer_metadata": null
}
^5.0.0development
@babel/preset-react
Environment
{
  "local_name": "@babel/preset-react",
  "alias": false,
  "peer_metadata": null
}
^7.26.3development
@mapbox/vector-tile
Environment
{
  "local_name": "@mapbox/vector-tile",
  "alias": false,
  "peer_metadata": null
}
^2.0.3development
eslint-plugin-jsdoc
Environment
{
  "local_name": "eslint-plugin-jsdoc",
  "alias": false,
  "peer_metadata": null
}
^62.8.0development
eslint-plugin-react
Environment
{
  "local_name": "eslint-plugin-react",
  "alias": false,
  "peer_metadata": null
}
^7.37.1development
@vitejs/plugin-react
Environment
{
  "local_name": "@vitejs/plugin-react",
  "alias": false,
  "peer_metadata": null
}
^4.3.2development
@babel/preset-modules
Environment
{
  "local_name": "@babel/preset-modules",
  "alias": false,
  "peer_metadata": null
}
^0.1.6development
@vitest/eslint-plugin
Environment
{
  "local_name": "@vitest/eslint-plugin",
  "alias": false,
  "peer_metadata": null
}
^1.5.1development
@babel/preset-typescript
Environment
{
  "local_name": "@babel/preset-typescript",
  "alias": false,
  "peer_metadata": null
}
^7.26.0development
eslint-plugin-react-hooks
Environment
{
  "local_name": "eslint-plugin-react-hooks",
  "alias": false,
  "peer_metadata": null
}
^5.0.0development
pbf
Environment
{
  "local_name": "pbf",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
^4.0.1peer
react
Environment
{
  "local_name": "react",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
^18.3.1 || ^19.0.0peer
three
Environment
{
  "local_name": "three",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
>=0.167.0peer
pmtiles
Environment
{
  "local_name": "pmtiles",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
^4.3.2peer
react-dom
Environment
{
  "local_name": "react-dom",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
^18.3.1 || ^19.0.0peer
@babylonjs/core
Environment
{
  "local_name": "@babylonjs/core",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
>=8.0.0peer
@babylonjs/loaders
Environment
{
  "local_name": "@babylonjs/loaders",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
>=8.0.0peer
@react-three/fiber
Environment
{
  "local_name": "@react-three/fiber",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
^8.17.9 || ^9.0.0peer
@mapbox/vector-tile
Environment
{
  "local_name": "@mapbox/vector-tile",
  "alias": false,
  "peer_metadata": {
    "optional": true
  }
}
^2.0.3peer

Distribution files

1 collected
Distribution 1

Source distribution

Source file
Checksums from source
{
  "shasum": "e123d163be9c9420fa83ac2dc95c50db88d3ff7d",
  "tarball": "https://registry.npmjs.org/3d-tiles-renderer/-/3d-tiles-renderer-0.4.25.tgz",
  "fileCount": 259,
  "integrity": "sha512-05wG0xQ2D2+lQSMV7TQGh1ul3Ozx8USHTCBI0JO0E9EIDlS0gSevwWYBcT/4TMX3JMFIzva4Ls7NjStoH+Z76Q==",
  "signatures": [
    {
      "sig": "MEUCIGiCkZpHqjPkWyhMAcZntD3uNrGykg5G8Rg3EspvRqsKAiEAjc6BfMeKWeuL/q7cSiFW8KrMsQh6tqPo7Z3ozzB8A2c=",
      "keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
    }
  ],
  "unpackedSize": 3024864
}

Repository

PENDING
nasa-ammos/3dtilesrendererjs

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 19:37 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:bb220e3351c503ea7bf2cbcc86d94f83dd1ef32eef4c59b809fce699e7bb7ee0

Other collected versions

0.5.318 Sept0.5.224 Aug0.5.17 Aug0.5.015 Jul0.4.289 Jun0.4.2725 MayView all collected versions →