加载三型大型模型的最佳方法以及如何在三j中释放缓存



问题1:在我的应用程序中,我使用JSONLOADER使用.js格式加载型号约为65MB,需要10秒。对我们来说太久了。有什么方法可以加载大型型号吗?或任何更好的加载程序或更好的格式?

问题2:在我的情况下,它大约是三js,我将remove((函数从场景中删除模型,但是缓存不会在浏览器中立即释放,免费的时间超过20秒才能免费。我该怎么办?这是我的代码:this.scene.remove(i(;我是我的模型。

json是一种非常繁重的格式。尝试使用OBJ或GLTF。在示例中,三。

关于内存释放,这是JavaScript固有的,该JavaScript使用垃圾收集来释放内存。(这是有关JavaScript内存管理的MDN文章。(就像Java一样,这是"偶尔"发生的,因此您只需要等待它即可。

Q1: OpenCTM也是一种很好的压缩格式,但是,但是仅限于单个三角网格。因此,您无法使用它存储整个场景。但是,也可以选择有损压缩,从而导致非常高的压缩率。还有三个示例。

Q2:如果您想真正删除模型,则需要在几何对象上调用dispose()以从内存中删除对象(材料和纹理也具有dispose方法(。

文档说:https://threejs.org/docs/index.html#api/core/core/buffergeometry

.dispose((

从内存处置对象。
在应用程序运行时要删除缓冲区时,您需要调用此功能。

最新更新