GLB压缩: Draco压缩,外观不变,体积只剩一小部分

把.glb拖到这里,返回的文件几何体经过Draco压缩,重复数据也已合并。贴图、材质、骨骼、变形目标和动画原样保留,改变的只是三角面的存储方式。一个ZIP最多可放50个文件。

免费 · 无需账号 · 文件3天后删除

压缩器对文件做了什么

按顺序处理三遍。完全相同的访问器、贴图和材质只存一份,不再每次使用都存一份。没有任何地方引用的资源会被删除,但每个顶点属性、每个叶节点和每个extras块都特意保留,所以仍需要纹理坐标的材质变体不会丢失它们。然后用Draco编码每个网格图元:位置14位、法线10位、纹理坐标12位。这是库的默认值,在查看器里看起来没有区别,几何体却缩小到一半或四分之一。

贴图不做任何处理。带贴图的模型里,贴图通常占了大部分体积,所以能省多少取决于文件中几何体原本占多少:只有一张小贴图的扫描模型能缩小80%到90%,带4K贴图的低面数道具只缩小百分之几。页面会同时显示压缩前后的大小,不用猜。

Draco压缩的GLB能在哪里打开

Three.js、Babylon、model-viewer、Unity的glTFast、Godot、Blender和Khronos示例查看器都能在加载时解码Draco。唯一不支持的是VRM:UniVRM和各种VTuber软件只读取普通glTF,所以这里不接受VRM,而不是把它变成一个哪里都打不开的文件。VRM优化工具能用这些软件可以读取的方式给VRM瘦身。

这个工具做不到什么

不适用于VRM

.vrm文件,或带VRM数据的.glb,不会被接受,并会提示改用VRM优化工具。Draco压缩的VRM在UniVRM和任何VTuber软件里都无法加载,一个哪里都打不开的文件算不上更小的文件。

只压缩几何体

贴图保持原有格式和尺寸。如果文件的大部分体积是4K图片,能省的空间很少;压缩前先在3D软件里缩小图片,或者用VRM优化工具的贴图步骤处理。

一个ZIP最多50个文件

ZIP里.glb以外的文件会被忽略;嵌套的文件夹在结果中保留。超过50个文件,或解压后模型超过500 MB,需要先拆成几个较小的ZIP。

保留3天,之后删除

上传的文件和结果在任务完成3天后删除,无论是否已下载。页面不保留历史记录:收藏下载链接,或趁文件还在时下载。

常见问题

压缩后模型看起来会不一样吗?

正常观看距离下不会。Draco在模型包围盒范围内把位置量化为14位:对一个两米高的角色来说,精度是十分之一毫米。硬边、UV缝合边和平滑着色都会保留,因为法线和纹理坐标随顶点一起保存。

为什么不接受VRM?

VRM读取程序(UniVRM、VSeeFace、VRChat的导入器、VRoid Hub)不解码Draco。压缩器会给你一个更小、但没有任何VRM软件能打开的模型。VRM优化工具在不压缩容器的前提下减少面数和贴图,这正是这些软件能读取的方式。

可以一次压缩多个文件吗?

可以:把它们打包成ZIP再拖进来。最多50个.glb文件,每个按原文件名分别压缩,作为一个ZIP返回,页面上列出每个文件压缩前后的字节数。

已经用Draco压缩过的文件能处理吗?

能。文件会被解码后按上面的设置重新编码。结果大小与之前基本相同,上下相差1%以内,不会再缩小一半。

动画和蒙皮怎么办?

原样保留。在变形目标需要的地方,Draco会保持顶点顺序;蒙皮权重和其他属性一起量化;动画通道不做改动。