Atlaslog
Atlaslog / Field Notes / Services & tile access
Field note · Services & tile access

3D Tiles never appear although tileset.json returns 200

Quick answer

The promise resolves and nothing is thrown, yet the scene stays empty. The usual causes are a missing transform in tileset.json, an oversized geometricError, a camera aimed elsewhere, or missing CORS and MIME types for the binary tiles.

Last verified 2026-11-03 · Multiple versions · Cite this page
Applies to: CesiumJS 1.121
Symptom
Checklist
  1. Check whether tileset.json is requested at all; if not, the loader code never ran or the promise was swallowed.
  2. Log Cesium.Cartographic.fromCartesian(tileset.boundingSphere.center): a large negative height means the placement transform is missing.
  3. Lower maximumScreenSpaceError to 8 to force subdivision.
  4. Call await viewer.zoomTo(tileset) instead of computing a camera position by hand.
  5. Check CORS headers and MIME types for b3dm, pnts, i3dm, cmpt and glb.
  6. Check whether terrain covers the model, since terrain sits tens to hundreds of metres above the ellipsoid.
Fix

Add an explicit modelMatrix or a root transform in tileset.json, load with Cesium3DTileset.fromUrl(url, { maximumScreenSpaceError: 8 }), and serve the tile directory with application/octet-stream for b3dm, pnts and glb plus Access-Control-Allow-Origin.

Code
var tileset = await Cesium.Cesium3DTileset.fromUrl('/data/tileset.json');
viewer.scene.primitives.add(tileset);

var center = tileset.boundingSphere.center;
var carto = Cesium.Cartographic.fromCartesian(center);

console.log(
  '经度', Cesium.Math.toDegrees(carto.longitude),
  '纬度', Cesium.Math.toDegrees(carto.latitude),
  '高度', carto.height
);
var tileset = await Cesium.Cesium3DTileset.fromUrl(url, {
  maximumScreenSpaceError: 8      // 越小越精细
});
Watch out
All 120 field notesChinese originalRunnable examples
English edition written for Atlaslog from the original Chinese field note. Code is unchanged and runs as-is.
Cite this page

Atlaslog (2026). 3D Tiles never appear although tileset.json returns 200. https://www.jingweizhi.com/en/cookbook/tileset-load-fail.html (accessed 2026-11-03).