千家信息网

Cesium开发中如何实现Draco模型压缩

发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,这篇文章给大家分享的是有关Cesium开发中如何实现Draco模型压缩的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Draco 由谷歌 Chrome 媒体团队设计,旨在大幅
千家信息网最后更新 2024年11月18日Cesium开发中如何实现Draco模型压缩

这篇文章给大家分享的是有关Cesium开发中如何实现Draco模型压缩的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Draco 由谷歌 Chrome 媒体团队设计,旨在大幅加速 3D 数据的编码、传输和解码。Draco的研发团队将这个开源算法的首要应用在chorme浏览器上。谷歌将这个算法开源,现在全世界的开发者可以去探索 Draco 在其他场景的应用。目前谷歌提供了两个代码版本:JavaScript 和 C++。

Draco可以用来压缩 mesh 和点云数据。它还支持压缩点( compressing points),连接信息,纹理协调,颜色信息,法线( normals)以及其他与几何相关的通用属性。

draco的github项目地址:

https://github.com/google/draco

Cesium1.44开始支持解析draco压缩算法的gltf/glb模型,将模型使用具有draco算法的工具进行压缩,例如blender等,Cesium加载模型时,进行模型的解析。

对比使用draco算法压缩的模型,模型的数据量变小了相当多,这样会提高网络上的传输速度。

在3D Tiles的大批量模型中,使用这一算法进行提前压缩,可以大大的减少网络传输的数据量。

Cesium官方还专门写了这样的一篇博客:

https://cesium.com/blog/2018/04/09/draco-compression/

同时,Cesium在前端使用了 Web Assembly的技术进行模型的解析,更提高了模型的解析性能,在Cesium的发行包中,可以看到 Web Assembly技术的 d raco_decoder.wasm文件。
在压缩提高传输速度的情况下,模型的质量并没有 减小。

感谢各位的阅读!关于"Cesium开发中如何实现Draco模型压缩"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0