怎么了
20210331出版本,第一次出 iOS 包,QA 过来说登陆界面的 UI 图片都有锯齿,Android
包不会。
怎么办
检查登陆界面的图片资源设置,都是用的 RGBA PVRTC4 打的图集 ,于是改下压缩格式试了下,真就好了。问了老大,带透明图压缩成 RGBA PVRTC4 确实是会这样。于是把带透明像素的图用 RGBA32,其他的用 RGB PVRTC4。
总结
为何要纹理压缩
- GPU 可以直接读取,无需再解压。
- 减少内存消耗。
- 减少图片体积。
常用方案
Android :ETC1 ,因为不带a通道,所以对于有透明像素的图片,需要再拆出一张 ETC1 用来存放a通道。
iOS :RGBA PVRTC 4bits。
大小的计算
8 bits(位) = 1 bytes(字节,B)
1024 bytes = 1 KB
1024 KB = 1 MB
假如有一张 1024x1024 的纹理,用的 RGBA32,1像素占用4个字节,总共占用 1024 x 1024=1 MB,1M x 4 = 4M;假如是512x512,则为 256x1024=256 KB,256KB x 4 = 1M。其实就是 4M x 1/4 啦。
特殊的地方
- PVRTC 要求尺寸为2的N次幂,要正方形。
- ETC1 要求尺寸为2的N次幂,宽高可不同。
- ASTC 是更优的压缩格式,但是对设配有要求,需要舍弃老设备。
参考
【纹理优化(二)】纹理压缩格式
游戏图片纹理压缩相关总结
你所需要了解的几种纹理压缩格式原理
Unity 带 Alpha 图片手机包失真
Unity NGUI UI 在iOS端的锯齿、模糊、颗粒感问题
标签:1024,KB,压缩,纹理,Unity,格式,图片 来源: https://www.cnblogs.com/nickcan/p/14608056.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。