gltf-pipeline 是一个开源的Node.js库,用于处理和优化glTF 3D模型文件。它可以用来转换glTF格式、压缩纹理、优化几何体数据以及其他一系列优化操作,以提高3D模型在网络传输和Web端加载的性能。以下是使用gltf-pipeline的一些典型示例:
安装gltf-pipeline
首先,通过npm全局安装gltf-pipeline:
npm install -g @gltf-transform/cli
示例1:转换gltf到glb格式
将一个.gltf文件转换为.glb(二进制格式)文件:
gltf-pipeline -i input.gltf -o output.glb
示例2:压缩纹理
使用KTX2格式压缩纹理
gltf-pipeline -i input.gltf -o output.gltf --KHR_texture_basisu
示例3:启用DRACO网格压缩
使用DRACO压缩算法优化几何体数据
gltf-pipeline -i input.gltf -o output.gltf --draco.enabled=true
示例4:生成mipmap
如果原始模型没有包含mipmap,可以使用gltf-pipeline生成:
gltf-pipeline -i input.gltf -o output.gltf --generateMipmaps
示例5:合并材质
如果模型中有大量重复材质,可以尝试合并材质以减少资源数量:
gltf-pipeline -i input.gltf -o output.gltf --mergeMaterials
示例6:预烘焙光照贴图
虽然gltf-pipeline自身并不直接提供光照贴图烘焙功能,但可以先在外部工具中烘焙好光照贴图,再将烘焙好的光照贴图替换到glTF模型中。
请参照gltf-pipeline的官方文档以获取最新和完整的功能介绍及使用方法。