如何减少/压缩三个.js GLTF模型的大小(使用.bin和纹理)



我正在为我的网站加载一个地球仪的三维模型,下载需要很长时间。

我正在使用GLTFLoaderReact中加载模型。

loadModals() {
const loader = new GLTFLoader()
loader.load(
"/models/scene.gltf",
gltf => {
object = gltf.scene.children[0]
scene.add(object)
console.log("Model loaded")
},
xhr => {
console.log("Model loading...")
},
error => {
console.log("Model failed to load", error)
}
)
}

与三维模型相关的文件包括:

  • 图像的纹理文件夹(58.7MB(

  • scene.bin(1.2MB(

  • 场景.gltf(10KB(

根据研究,如果模型附带.bin文件,则意味着gltf不是压缩的二进制格式。然而,在线查看gltf-pipeline等工具时,我不确定在存在纹理文件夹和scene.bin等单独文件时如何实现压缩。

我对three.js和网络实现非常陌生,所以任何建议都将不胜感激。

谢谢!

如果你只需要压缩你的纹理,有多个图像压缩网站。

为什么不使用.glb格式?GLB文件格式是GLTF的二进制形式,它包括纹理,而不是将它们作为外部图像引用。

对不起,如果我不帮你。

由于我还没有收到任何答案,我的临时解决方案是首先使用Photoshop优化纹理文件夹中的图像。

但这是以外观质量较低的模型为代价的。

相关内容

  • 没有找到相关文章

最新更新