ios和android游戏纹理优化和内存优化

pvrtc 和 etc是硬件支持的格式,因此,不会进行内存和显存解码,将会省许多
同时,由于不会解码,那CPU到GPU的传输量就会变少,在手机平台这种总线带宽小的设备上,可以得到一定量的性能提升。

但pvrtc只适合IOS,etc适合android, 需要做两个平台的分别优化,并且etc1(刚刚有修改,先前是说的etc,随着OPENGL ES 3.0的发布,etc2也出了,支持ALPHA通道,但就目前的市场,可以不用考虑)不支持ALPHA通道,所以需要解决一些问题。

png24/32是无压缩格式的RGBA通道,质量是最好的
JPG是有损压缩的格式,不支持ALPHA通道,但是是安装包最小的。

但JPG会进行内存解压,也就是说,一个JPG读入到内存后,与png24/32读入内存是一样的。

综上可知各种格式的优缺点

prvtc,etc不仅可以减少安装包大小,也能减少内存显存开销,并能提升一定的性能
png24/32可以保证原始质量,但内存和安装包大小 会很大
jpg不能省内存显存,但jpg可以使安装包较小,且它不支持ALPHA通道。

而对于pvrtc,etc打出来的文件大小,比jpg要大得多。

在此,我们还可能会用到一种叫 grunt - png8的压缩格式,这种格式可以将png24/32压缩到1/4的大小,且几乎可以维持图像质量需求,这个比JPG大,但支持ALPHA通道。

那选择策略就需要针对不同的资源进行优化了

1、如果游戏是那种大量关卡资源,但同关卡中出现的资源和元素较少,这种一般不会有内存和性能瓶颈,那可以选择JPG+grunt-PNG8,这样一来,可以将安装包大小减少到1/4左右
2、如果游戏是那种同屏复杂度较大的,那就需要对游戏中的元素分类处理了, 一般对于UI,直接使用png8即可, 对于单张场景,我们使用JPG,对于里面的小元素,比如特效,人物精灵动画等,则建议使用pvrtc或者etc格式。

纹理格式的选择不是死的,只要你明白了不同格式的优缺点,那就可以很容易地做出判断。。

参考文章

https://blog.csdn.net/u013704666/article/details/38906743

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值