Skip to content

加载 3DTiles

当我们有了自己的 3DTiles 数据,可以将其托管一个服务器容器中,必比如 nginxtomcat 等,然后获取到索引文件(tileset.json)的路径 url。

Cesium3DTileset 类提供了 fromUrl(url, options) 方法来加载我们的自己的 3DTiles 数据。

ts
let viewer = new Cesium.Viewer("cesiumContainer");
let url =
  "https://ds-rebuild-prod-1301434080.cos.ap-guangzhou.myqcloud.com/model/202401/1744542774717317121/b3dm/tileset.json";
Cesium.Cesium3DTileset.fromUrl(url)
  .then((tileset) => {
    viewer.scene.primitives.add(tileset);
    viewer.zoomTo(tileset);
  })
  .catch((err) => {});

加载参数

在加载 3DTiles 时,我们可以通过添加一些 Cesium3DTileset.ConstructorOptions 参数来调整最终加载效果。

option

这些配置大概分成以下 5 类:

1、核心参数

  • ‌url‌

    指定 3DTiles 数据入口文件路径(tileset.json)。该参数为必需项,可通过 Cesium3DTileset.fromUrl() 直接传递或作为构造参数。

  • ‌maximumNumberOfLoadedTiles‌

    设置最大加载瓦片数量,默认值为 1000。用于控制内存消耗和渲染性能。

  • ‌shadows‌

    控制模型阴影接收模式,可选值:Cesium.ShadowMode.ENABLED(启用)、DISABLED(禁用)或 RECEIVE_ONLY(仅接收)。默认禁用。

  • ‌enableCollision‌

    启用相机与模型的碰撞检测,默认值为 false。开启后相机无法穿透模型表面。

2、性能优化参数

  • ‌maximumMemoryUsage‌

    设置最大内存使用量(单位:MB),默认 128MB。超出时自动卸载低优先级瓦片 ‌。

  • ‌dynamicScreenSpaceError‌

    启用动态屏幕空间误差调整,默认 true。根据视口变化自动平衡渲染精度与性能 ‌。

  • ‌maximumScreenSpaceError‌

    定义最大屏幕空间误差阈值(默认 16)。数值越大,瓦片加载层级越低(性能优先);数值越小,细节保留越多。

  • ‌skipLevelOfDetail‌

    是否跳过中间 LOD 层级直接加载叶子节点,默认 false。开启后提升加载速度但可能增加跳跃感 ‌。

  • ‌preferLeaves‌

    优先加载叶子节点,默认 false。适用于需要快速展示最高细节的场景 ‌。

3、视觉控制参数

  • ‌imageBasedLightingFactor‌

    调整基于图像的照明强度(范围 0-1),默认 1.0。数值越小,环境光影响越弱 ‌。

  • ‌lightColor‌

    设置光源颜色,默认白色(Cesium.Color.WHITE)。影响模型表面光照效果 ‌。

  • ‌cullWithChildrenBounds‌

    是否通过子节点包围盒进行视锥剔除,默认 true。关闭后可能提升渲染精度但降低性能 ‌。

4、调试参数

  • debugFreezeFrame‌

    冻结当前帧渲染状态,用于静态调试。

  • ‌debugColorizeTiles‌

    按层级颜色标记瓦片,直观显示 LOD 分布。

  • ‌debugShowBoundingVolume‌

    显示瓦片包围盒,辅助空间范围分析。

  • ‌debugShowGeometricError‌

    展示几何误差数值,帮助优化 LOD 配置。

5、其他高级参数

  • collisionTextureSizeScale‌

    碰撞纹理尺寸缩放因子,默认 1.0。影响碰撞检测精度。

  • ‌preloadFlightDestinations‌

    预加载飞行路径终点瓦片,默认 false。适用于相机飞行动画场景。

‌- loadTilesWithRequestVolume‌

是否仅加载请求体积内的瓦片,默认 true。关闭后可能加载不可见区域数据。

MGis 地理三维库