Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 三个js使用大尺寸json文件显示3D图像_Javascript_Three.js - Fatal编程技术网

Javascript 三个js使用大尺寸json文件显示3D图像

Javascript 三个js使用大尺寸json文件显示3D图像,javascript,three.js,Javascript,Three.js,我需要显示3D图像。我有一个.obj文件,大小80MB,我将其转换为json文件,该文件的大小也接近75MB。现在使用三个js,我可以显示旋转的3D图像,但问题是速度。加载3D图像需要将近1分钟 进一步的客户端希望在同一页面上显示2个这样的图像,我也可以这样做,但加载图像几乎需要4-5分钟 是否有提高速度的解决方法???如果对象大小为80MB,则不应将其视为适合在web应用程序中使用。如果模型似乎没有高水平的细节,那么可能您的导出器有一些问题,您得到了许多您不需要的额外信息。如果模型非常复杂,那

我需要显示3D图像。我有一个.obj文件,大小80MB,我将其转换为json文件,该文件的大小也接近75MB。现在使用三个js,我可以显示旋转的3D图像,但问题是速度。加载3D图像需要将近1分钟

进一步的客户端希望在同一页面上显示2个这样的图像,我也可以这样做,但加载图像几乎需要4-5分钟


是否有提高速度的解决方法???

如果对象大小为80MB,则不应将其视为适合在web应用程序中使用。如果模型似乎没有高水平的细节,那么可能您的导出器有一些问题,您得到了许多您不需要的额外信息。如果模型非常复杂,那么您唯一的实际选择就是大幅简化模型,或者找到另一个多边形数较低的模型

如果模型直接来自客户,那么不幸的是,您将面临一项令人不快的任务,即说服客户了解其局限性

如果您必须使用这些模型,也许您可以尝试压缩数据并在客户端对其进行解压缩。google快速提出了堆栈溢出问题作为起点:

编辑:也许你可以把它分解成不同的部分。由于它是一种索引格式,您可能仍然需要首先下载所有顶点数据,然后下载索引数据块

如果您想更深入,可以尝试将索引数据分成块,并计算每个块需要哪些顶点。不过,无法保证最终结果会如此出色,因此可能不值得付出努力。也就是说,通过一些分析,您可能会重新安排索引,以便模型以合理的顺序加载,比如从前到后,或从左到右


如果您可以使用3d艺术家,则将模型分解为多个模型并逐个加载到场景中可能会更容易。这可能看起来更干净,因为您可以对模型的切割位置进行艺术选择。

不幸的是,该文件由客户端共享,并且包含高级别的详细信息。如果我压缩该文件,它的大小仍然是30 MB或40 MB。有没有什么方法可以像解析json文件的部分一样。我在上面的回答中添加了一些额外的想法。您好@Jaydeep S。我希望您不介意我提问,但我注意到您刚刚加入了Stack Overflow,可能您没有意识到它是如何工作的。如果我的答案对你有帮助,你介意勾选它作为“正确”答案吗?这样,我将获得一些声誉积分,并且答案将被其他用户标记为有价值。我希望你解决了你的问题。。。如果你想出了一个好的解决方案,也许你可以向别人汇报,这样别人就可以从你的经验中学习。谢谢