贴图方面
压缩贴图大小是目前最简单也最容易减小您模型大小的方法。
选中一个贴图,即可在 Inspector | 检查器 中查看此贴图目前的导入设置:
让我们快速认识一下可以减少贴图大小的重要部分:
- Alpha Is Transparency | Alpha 是透明的 允许导入贴图中透明的部分,一般配合渲染模式非 Opaque/不透明 的材质球使用;
- Generate Mipmaps | 生成 Mipmap 生成一系列 Mipmap,来使得视角距离物体偏远时拥有更好的视觉效果;
- Max Size | 最大尺寸 最大贴图大小,将贴图分辨率限制在您选择的值内;
- Format | 格式 贴图导入格式,原理类似于压缩包,默认为 Automatic ,即 自动选择;
- Compression | 压缩 压缩质量,越高的质量代表着越好的视觉效果和越大的导入大小,反之亦然;
- Use Crunch Compression | 使用 Crunch 压缩 使用紧凑压缩,此功能会进一步减少贴图导入大小和画质。
注:世界上没有什么可以让高视觉效果与低导入大小同时存在的设置,这是一个取与舍的选择,取决于您。
Alpha Is Transparency / Alpha 是透明的:
如果您勾选了此选项,则可以配合着色器来做出一些不错的视觉效果,比如说半透明的刘海或衣服。如表格所示:
对应关系 | Alpha Is Transparency 关闭 | Alpha Is Transparency 打开 |
预览 |
注:由于此衣物使用的是 Alpha 蒙版制作的半透明效果,所以无法给出参考数值大小,十分抱歉。
我该在什么情况下打开或关闭它?
您可以选择关闭此选项,但意味着视觉效果会变差。
如果您的物体未包含透明的部分,您可以选择关闭它。亦或者使用 PhotoShop 将贴图透明的部分使用纯色(例如纯黑或纯白)进行填充,从根源减小贴图大小。
有些着色器(例如:liltoon)会提供使用 Alpha 蒙版 来制作透明或半透明效果的选项。遇到此情况应该去修改贴图对应的材质球设置!
Generate Mipmaps / 生成 Mipmap:
此选项用于生成一系列逐渐降低分辨率的贴图,用来在视角与物体之间选择适合当前距离的分辨率,以减少视觉效果上的撕裂或摩尔纹。如表格所示:
对应关系 |
近距离观察 Generate Mipmaps 关闭 |
Generate Mipmaps 关闭 | Generate Mipmaps 打开 |
预览 | |||
Compression |
Normal Quality | Normal Quality | Normal Quality |
原始大小 | 75.0 MB | 75.0 MB | 75.0 MB |
导入大小 | 7.1 MB | 7.1 MB | 9.5 MB |
注:因为笔者在模型素材中找不到合适的例子,所以用世界来代替。
我该在什么情况下打开或关闭它?
如果贴图的纹理很复杂,例如牛仔裤上的编制花纹,您可能需要保持开启此选项。
如果贴图没有复杂的纹理或者渐变,您可以选择关闭此选项。
不在意模型的远处视觉效果时可以关闭此选项。
Max Size / 最大尺寸:
此选项影响到贴图最终的导入分辨率,如果你有一个分辨率为 4096 的贴图,然后将 Max Size 设置为 2048,那么最终将会以 2048 的分辨率来导入,如果原始分辨率小于你选择的 Max Size,则会按照原始分辨率进行导入。此选项影响着 90% 的视觉效果。如表格所示:
对应关系 | 4096 | 2048 | 1024 | 512 |
预览 | ||||
Compression |
Normal Quality | Normal Quality | Normal Quality | Normal Quality |
原始大小 | 7.8 MB | 7.8 MB | 7.8 MB | 7.8 MB |
压缩大小 | 8.0 MB | 2.0 MB | 0.5 MB | 128.0 KB |
我该如何选择合适的选项?
这里有一个基础的建议分辨率表格,您可以按照实际效果增加或降低分辨率:
对应关系 | 主色 / Albedo | 法线 / Normal | 材质捕捉 / MatCap | 各种 Mask |
128 | √ | |||
256 | √ | √ | ||
512 | √ | √ | ||
1024 | √ | √ | ||
2048 | √ | |||
4096 |
Format / 格式
您可以指定贴图的导入格式来进一步节省空间。贴图格式可以笼统的解释为和 压缩包格式(*.rar
,*.zip
,*.7z
) 一样的原理,但是可以被显卡直接读取和使用,无需解压缩并节省显存空间。每个贴图都有适合自己的导入格式,如果您感兴趣可以访问 Unity 的官方讲解页面来进一步了解。
转到 PC 导入设置
,并勾选 Override For Windows, Mac, Linux
来调整 Format
。这里的选项会覆盖 Default 的导入设置,所以如果有需要,别忘了也调整剩余的选项。
对应关系 | DXT5|BC3 | DXT1|BC1 | DXT5|BC3 | DXT1|BC1 |
预览 | ||||
Compression | Normal Quality | Normal Quality | Normal Quality | Normal Quality |
Alpha Is Transparency | 是 | 是 | 否 | 否 |
原始大小 | 4.2 MB | 4.2 MB | 4.2 MB | 4.2 MB |
导入大小 | 4.0 MB | 2.0 MB | 4.0 MB | 2.0 MB |
我该如何选择合适的选项?
- DXT5|BC3 :适用于 99% 的贴图,导入透明度;
- DXT1|BC1 :如果贴图不需要用到透明度,您则可以使用此格式,它与
DXT5|BC3
的区别仅在于它不导入透明度;
对于 法线 / Normal 贴图,您不应该尝试着更改它们的格式。这可能会导致意想不到的结果,请将选项保持在 Automatic。
Compression / 压缩:
此选项影响着贴图被 Max Size 选项进行压缩后的质量,越低的质量意味着越小的大小和越多的杂色和色块。如表格所示:
对应关系 | None | Low Quality | Normal Quality | High Quality |
预览 | ||||
Max Size | 2048 | 2048 | 2048 | 2048 |
原始大小 | 4.9 MB | 4.9 MB | 4.9 MB | 4.9 MB |
压缩大小 | 12.0 MB | 2.0 MB | 2.0 MB | 4.0 MB |
我该如何选择合适的选项?
如果 Max Size 设为了 4090 或更高,调整此选项不会有较明显的效果。默认情况下选择“Normal Quality”即可。您也可以尝试选择“Low Quality”来进一步压缩。请注意,“None”选项代表着完全不进行压缩,这将带来比原图更高的大小!
如果您使用的是中文界面的 Unity,“Normal Quality”将会被显示为“法线质量”,这是翻译上的错误,正确翻译为“普通质量”,并非真的按照法线的质量进行压缩!
Use Crunch Compression / 使用 Crunch 压缩:
此选项会以非常夸张的比例来压缩您的贴图。当您勾选了此选项后,将会在下方添加一个拖动滑块,用来设置压缩质量,同时也会降低视觉效果,如表格所示:
对应关系 | 关闭 | 25 | 50 | 75 | 100 |
预览 | |||||
Compression | Normal Quality | Normal Quality | Normal Quality | Normal Quality | Normal Quality |
原始大小 | 4.9 MB | 4.9 MB | 4.9 MB | 4.9 MB | 4.9 MB |
导入大小 | 8.0 MB | 0.7 MB | 0.8 MB | 0.8 MB | 0.9 MB |
我该在什么情况下打开或关闭它?
事实上,在任何情况下您都应该避免使用它!此选项只会减小模型的 压缩大小/下载文件大小,而不会减小 显存使用量/显存占用,并且会增加您的 CPU 负担!
关于此选项,你可以点击 此处 来查看 VRChat 官方的看法。
使用 lilAvatarUtils 来批量设置贴图导入设置:
如果您觉得一个个寻找模型上使用的贴图并修改导入设置很繁琐的话,您可以尝试使用 lilAvatarUtils 来批量调整贴图导入设置。lilAvatarUtils 是由 liltoon 作者 lilxyzw 开发的模型优化插件,如果您感兴趣,访问它的 Github 页面来进一步了解 lilAvatarUtils:https://github.com/lilxyzw/lilAvatarUtils。您也可以点击 这里 来前往 夜嵐蝶 Alma 编写的 lilAvatarUtils 使用说明书。
注意:lilAvatarUtils 原生不支持中文!如果你需要中文,请访问 此处 来获得汉化文件!
No Comments