Unity 贴图压缩方法和对比
在手机平台,贴图必定需要压缩,如果不压缩,没多少手机可以坑得住内存,除非你对贴图的精度需求很高,需要牺牲对低端设备的适配,贴图压缩是一个常用和必要的内存优化手段
以下是常用的一些贴图压缩对比图
我们在压缩的时候,通常会把贴图分为透明和不透明类型,对于不透明的贴图,则没有通道图,可以直接用RBG16、RGB PVRTC4、ETC来压缩。
对透明的贴图,我们需要分离出两张图,一个是颜色图(包含RGB通道)一个是通道图(定义alpha)
这样分离的原因在于,可以达到更好的压缩质量,而又不至于占用内存太大
比如,颜色图用RGB PVRTC4,通道图也用RGB PVRTC4,这样一张256KB的图可以压缩到64KB
上图列出的是在IOS的平台下的压缩方法,IOS平台的GPU型号统一,所以以上的贴图压缩格式,适合任何IOS平台。对于Android平台下也差不多,只是PVRTC 4换成了ETC,例如:通道图和颜色图都是RGB ETC 压缩。只是不确定所有Android平台都支持RBG16,这个还没做过测试,理论上是都支持的
对于一些精度要求低的贴图,例如场景中的花花草草,甚至可以用RGBA PVRTC2来压缩。比RGBA PVRTC 4还要少一半。
对于UI贴图,优先推荐使用RGB16 &#