Cesium加载glb模型

417 阅读1分钟

开局一张图,如图加载一个glb的卫星模型。

图片

实现思路:

1.参考官方加载模型的沙盒示例sandcastle.cesium.com/?src=3D%20M…

2.加载glb格式的模型,官方的model参考文档:cesium.com/learn/cesiu…

图片

参考代码

const primitiveCollection = viewer.scene.primitives.add(new Cesium.PrimitiveCollection())
const modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(
  Cesium.Cartesian3.fromDegrees(sate.longitude, sate.latitude, sate.altitude)
)
const model = primitiveCollection.add(
  Cesium.Model.fromGltf({
    id: 'satelliteModel-' + sate.satelliteId,
    url: './static/BD1H.gltf', // gltf文件的URL
    modelMatrix: modelMatrix,
    show: false,
    scale: 1.0 // 放大倍数
  })
)

名词解释

1.glb模型:GLB模型指的是GLB文件格式,是一种用于存储和传输3D模型、纹理和动画等相关资产的二进制文件格式。GLB文件是在WebGL以及多种虚拟和增强现实(VR/AR)应用中使用的常见格式。GLB文件将所有的3D模型数据(几何形状、纹理、动画、光照等)打包到一个单一的二进制文件中,以提供更高的加载和渲染效率。相比于其他文件格式(如OBJ或FBX)使用的文本数据格式,GLB文件的二进制格式可以更快地加载和处理,从而在网络传输中节省带宽和加载时间。