对于THREE.js,JSON模型格式更好吗

对于THREE.js,JSON模型格式更好吗,three.js,Three.js,我正在使用Three.js创建一个简单的游戏,我加载了大约100个obj格式的低多边形模型,但性能不平稳,所有模型的大小都不超过18MB,如果我使用JSON格式,虽然大小会增加一倍多,但会更快吗? 我尝试了Collada,但是对于像我的case这样的简单对象,obj更快,如果JSON不是最好的解决方案,那么最好的解决方案是什么?我认为没有更好的格式了?这真的取决于你需要什么和不需要什么。然而,对我来说,我会选择obj 没有任何一种文件格式总体上更好,这取决于您的需求和使用的外部软件以及它是否包含

我正在使用Three.js创建一个简单的游戏,我加载了大约100个obj格式的低多边形模型,但性能不平稳,所有模型的大小都不超过18MB,如果我使用JSON格式,虽然大小会增加一倍多,但会更快吗?
我尝试了Collada,但是对于像我的case这样的简单对象,obj更快,如果JSON不是最好的解决方案,那么最好的解决方案是什么?

我认为没有更好的格式了?这真的取决于你需要什么和不需要什么。然而,对我来说,我会选择obj

没有任何一种文件格式总体上更好,这取决于您的需求和使用的外部软件以及它是否包含动画。就个人而言,我通常不太使用json,我使用obj,但json受到三个.js的大力支持。。但这更像是一种观点

有很多因素也可以解释为什么你的应用程序会很重。 没有源代码或模型文件本身,我只能推测

需要考虑的事情很少:

您的模型是否尽可能优化,一个场景中的100个模型是安静的,一次分配18mb,这包括纹理吗

对纹理进行压缩和重用。这将提高性能。 从阴影,灯光和动画类型都有影响,谷歌有大量的资源提供给你

有几种技术可以让你的多边形倒数:细分就是一个很好的例子,有一篇非常有用的文章介绍了这一点。

此外,细节的LOD级别可视,具体取决于对象的距离或距离。 这里有一个非常有用的解释: Three.js在不添加任何LIB的情况下支持此功能

细节和渲染方式是获得最佳性能的关键

即使是你如何设置你的项目也会有很大的影响。看看函数和你如何使用它们,例如鼠标移动和dom元素单击,如果它们没有得到优化和有效使用,会大大降低你的three.js应用程序的速度


重用和共享是您的最佳选择,两次加载同一个模型没有意义,因为一个是蓝色的,另一个是绿色的…

您是在谈论加载时性能还是渲染时性能?我怀疑使用的模型格式对渲染时性能有很大影响。渲染不平滑在这种情况下,我怀疑模型格式是您的问题。您是如何得出这个结论的?在pc中,它的渲染速度比移动设备快,但仍然不是很好,在移动设备中,它速度很慢。加载的文件格式不应影响渲染性能。如果您想要加载时性能,请尝试使用附带的python脚本转换为二进制格式。了解实时3d图形。查找GPU Gems系列之类的资源。