如何压缩glb文件_Gltf模型太大,Threejs加载耗时怎么办?答:Blender导出Gltf可以被gltf-pipeline压缩90%...

本文介绍了如何使用gltf-pipeline工具将GLTF和GLB模型进行压缩,包括转换为Draco格式,以减少模型加载时间和文件大小。通过命令行或库的方式,你可以轻松实现模型的压缩,显著提升Threejs等场景的加载效率。
摘要由CSDN通过智能技术生成

安装

npm install -g gltf-pipeline

将glTF转换为Draco glTF

gltf-pipeline -i model.gltf -o modelDraco.gltf -d

压缩前:

压缩后:

使用gltf-pipeline作为命令行工具:

将glTF转换为glb

gltf-pipeline -i model.gltf -o model.glb

gltf-pipeline -i model.gltf -b

将glb转换为glTF

gltf-pipeline -i model.glb -o model.gltf

gltf-pipeline -i model.glb -j

将glTF转换为Draco glTF

gltf-pipeline -i model.gltf -o modelDraco.gltf -d

保存单独的纹理

gltf-pipeline -i model.gltf -t

使用gltf-pipeline作为库:

将glTF转换为glb:

const gltfPipeline = require('gltf-pipeline');

const fsExtra = require('fs-extra');

const gltfToGlb = gltfPipeline.gltfToGlb;

const gltf = fsExtra.readJsonSync('model.gltf');

gltfToGlb(gltf)

.then(function(results) {

fsExtra.writeFileSync('model.glb', results.glb);

});

将glb转换为glTF

const gltfPipeline = require('gltf-pipeline');

const fsExtra = require('fs-extra');

const glbToGltf = gltfPipeline.glbToGltf;

const glb = fsExtra.readFileSync('model.glb');

glbToGltf(glb)

.then(function(results) {

fsExtra.writeJsonSync('model.gltf', results.gltf);

});

将glTF转换为Draco glTF

const gltfPipeline = require('gltf-pipeline');

const fsExtra = require('fs-extra');

const pro

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值