【Unity性能优化】-图片资源优化知识整理-[2022.02笔记]

前言

主程给我提了个需求,他说:现在游戏性能在xxFPS了,太低了。你看下能不能优化一下图片资源。

我想了一下:那不是很简单,开启压缩,调整压缩率,调整质量,调整格式。

主程摸了摸下巴,略显尴尬得说:美术那边问你图片在unity还能不能更清晰一点,你看下怎么整?

此时此刻,我脸上笑嘻嘻,心里mmp,心想着:“你不是让我优化图片资源吗,现在还想让图片更清晰?怎么可能啊?而且为什么不早说啊,我不会要白忙活了吧。”。没敢说,我思索了会,笑嘻嘻的说:“这不太可能吧,压缩会失真啊,要压缩就会丢清晰度呀”。说完还是回到工位默默研究去了。

图片压缩

CompressorLevel:压缩质量可能是运行时的一个因素,它会改变压缩格式。不同的格式可能具有不同的压缩率,因此文件大小/内存使用情况也不同。内存使用越多,运行时读取的纹理越慢。
Compressor Quality :不会改变格式,且不会影响运行时读取纹理的速度。只是花费多长时间试图找到最佳质量匹配。Quality越高 画质越好,Texture贴图大小越大
文章这个larger Textures是指内存大小,larger Textures就是对应着这下面这个数字,因为我调整了Compression等级,这个值没有变。只受Compressor Quality影响。
网上还给了几个方案说是调整这个Bilinear细节更高,不过我也没看出区别。
图片质量跟这些也有关系

打包图片贴图格式选择:

模型贴图:

Albedo  仅包含一个纯颜色贴图    RGB

AO贴图   环境遮蔽贴图  黑白灰贴图  存放阴影信息  

根据通道 选择贴图格式  来优化纹理

贴图打包:

 unity在游戏中 不能直接使用图片,在打包时候unity会自动把图片转换成Texture2D格式 Png-》Texture2D格式

选用平台支持、兼容性最好,性能最好的压缩格式
ETC2 :安卓平台主流格式   对安卓硬件兼容性最好
Addressbundle  是Untiy最新的打包方式
用Addressbundle打包和Asset bundle  打包最终输出格式都是ab包

Android下优先设置图片规则才用ETC+Crunched的格式,如果图片无法被4整除在设置ASTC格式,如果安卓手机不支持ASTC则会fall back到RGBA32IOS下优先设置图片规则采用PVRTC4,如果图片不是2的整数次幂在设置ASTC格式,如果不支持fall back到RGBA32


安卓平台显示图片  显卡可以直接读取Etc2文件  不需要再解压,所以使用Etc2格式兼容性最好,性能最好。贴图压缩:对GPU来说 所占用渲染带宽更低。

其他手段

前面主程给我提的需求,我经过一段时间的摸索,已经确定了Unity的压缩肯定会失真的,于是我开始想有没有软件可以打包精灵图集的,看看有没有解决方案。还真让我找到了!

总结:

Unity中的图片压缩会导致图片失真,如果我们即想要图片更小又想要保证图片清晰度高。我们可以使用TextureParker这个软件,它是一款纹理地图集开发工具,它能够帮助用户优化网页以及游戏方面的开发,持图形用户界面和命令行、16位像素格式、包括抖动的图像优化、支持PVR图片、高品质缩放算法。是市场上最好的精灵表生成工具。

后面再讲讲如何使用TextureParker这个软件打包图集,来满足咱们上面的需求哈。今天太晚了,要睡了。

作者:Miracle
来源:麦瑞克博客
链接:https://www.unitymake.com/archives/unity/1787
本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0许可协议,转载请注明!
THE END
分享
打赏
海报
【Unity性能优化】-图片资源优化知识整理-[2022.02笔记]
前言 主程给我提了个需求,他说:现在游戏性能在xxFPS了,太低了。你看下能不能优化一下图片资源。 我想了一下:那不是很简单,开启压缩,调整压缩率,调整质……
<<上一篇
下一篇>>
文章目录
关闭
目 录