1.gltf格式一、简介
gltf格式一、简介
GLTF简介,作为一种在3D领域被称为"3D界的JPEG"的数据格式,由Khronos维护组织推出,旨在统一适用于应用程序渲染的桌面标志源码3D格式。GLTF的特点包括:由OpenGL维护组织推出,适用于基于OpenGL的引擎;减少了3D格式中的冗余信息,优化了资源;提高了应用程序读取效率和减少了渲染模型的运行时间;支持3D模型几何体、材质、动画及场景、摄影机等信息。
GLTF有两种导出格式:.gltf和.glb。查看原图源码.gltf文件导出时,一般会输出两种文件类型,一种是.bin文件,以二进制流的方式存储模型基本数据信息;另一种是.gltf文件,本质是json文件,记录模型顶点数据的asp源码 黄页索引和材质索引,方便编辑,具有较好的可读性。而.glb文件格式只导出一个文件,将所有数据都输出为二进制流,通常比.gltf文件更小,适用于不关心模型内具体数据的weixin电影源码情况。
GLTF的打开方式有多种:推荐使用gltf-viewer,可以修改和查看各种属性;VScode安装gltf tools插件,可以一边查看json一边修改与查看模型,同时支持Babylon.js、Cesium Filament、Three.js等四种引擎。android mmspdu源码
Draco是一种用于压缩和解压缩3D几何网格和点云的库,由Google推出,用于提升压缩效率和速度。通过Draco开发的命令行工具gltf-pipeline可以将glTF资源进行编码压缩,gltf-pipeline可以通过npm安装使用。Draco开源库地址提供了C++源代码和处理编码数据的C++及JavaScript解码器,支持压缩点、连接信息、纹理坐标、颜色信息、正常量以及与几何形状有关的任何其他一般属性,显著缩小了3D图形文件的大小,不影响视觉效果,适用于虚拟现实和增强现实场景,提高应用程序下载速度和3D图形加载速度。
通过Draco进行压缩基本上是有损的,主要体现在Draco通过Edge breaker 3D压缩算法改变了模型网格数据的索引方法,缺少了原来的网格顺序;通过减少顶点坐标、顶点纹理坐标等信息的位数,以减少数据的存储量。
参考资料包括:GLTF2.0、压缩算法、3D文件压缩库——Draco简析、Draco Compressed Meshes with glTF and 3D Tiles。