three.js JSON文件压缩

three.js JSON File compression

本文关键字:压缩 文件 JSON js three      更新时间:2023-09-26

我有几个正在工作的Three.js WebGL网页。请参见此处:https://lpplmarketwatch.com/3d-contour-examples/

然而,我从静态ftp服务器托管的JSON文件的文件大小约为4-6MB。它们之所以很大,是因为JSON对象中有许多"顶点"。我可以将自己电脑上的文件压缩到大约1MB的tar.gz。有没有一种方法可以压缩这些文件,并让用户的浏览器用javascript解压缩文件,由Three.js JSONLoader加载?

警告:JSON库在某个时候发生了变化,所以我不知道在Python3之外它的工作效果如何。

因此,我要提到的一件事是,也许可以编写自己的脚本来处理JSON的重新序列化并限制浮点精度。JSON将精确到小数点后16位,这将影响文件大小。对于Blender导出器,我破解了我的JSON库来处理这个问题。参考这里的来源(很难看)。可以重构它,使其在Blender之外独立运行。

JSON破解:https://github.com/mrdoob/three.js/blob/master/utils/exporters/blender/addons/io_three/exporter/_json.py

Blender导出器的dump()实现https://github.com/mrdoob/three.js/blob/master/utils/exporters/blender/addons/io_three/exporter/io.py#L17