Appearance
概述
在 Cesium 中,模型(Model) 是通过 Entity 的 model 属性加载的 3D 模型文件(glTF)。glTF 3D 模型传输格式标准,.glb 是 glTF 的“单文件二进制版”把 .gltf + .bin + 图片 全部封装进一个二进制文件里。
3D模型网站:https://sketchfab.com/
制作3D模型
主流的制作3D模型软件:
| 软件 | 适用方向 | 优点 | 是否支持 glTF |
|---|---|---|---|
| Blender(免费) | 通用建模、动画、游戏、可视化 | 免费、功能强、插件多 | ✔ 原生支持 |
| 3ds Max | 建筑、机械、游戏开发 | 行业标准、建模强、商业场景多 | ✔ 插件/导出支持 |
| Maya | 影视动画、角色、特效 | 动画强、影视行业标准 | ✔ 插件支持 |
| CityEngine | 城市级建模(整城生成) | 规则驱动,自动生成城市大模型 | ✔ 支持 |
| Revit | BIM 建模 | 建筑工程结构、机电等 | ✔ 需转换 |
| ArcGIS Pro | GIS 三维场景 | 可制作用于 Cesium 的 3D Tiles | ✔ 支持 |
实体创建模型
javascript
viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(121.47, 31.23, 1000),
model: {
uri: '/models/plane.glb',
color: Cesium.Color.YELLOW, // 颜色
silhouetteColor: Cesium.Color.RED, // 轮廓颜色
silhouetteSize: 2, // 轮廓大小
scale: 1,
}
})
viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(121.47, 31.23, 1000),
model: {
uri: '/models/plane2.glb',
scale: 1,
runAnimations: true, // 可以通过这个单独控制当前模型是否暂停动画
}
})