pvr 和 png的说明和转换

Zwoptex生成的spritesheet除了可以导出png格式的图片外还有pvr格式。pvr格式是iOS的显示芯片可以直接读取的,不需要经过解析就能直接显示,所以渲染速度更快,更节省内存。
有人做了一项测试:

一个空的cocos2D模版工程运行起来之后占用的内存大约是4MB。

直接用CCSprite显示一张2048*1024的数据格式为RGBA565的PNG图片之后,内存占用达到了20MB。同样的情况下换成pvr格式之后,内存占用为16MB。也就是说png格式的图片占用了20-4=16MB,pvr格式的图片占用了16-4=12MB。节省了25%。

Zwoptex还有一个选项叫做“ccz压缩”,选中之后图像的大小几乎可以减小一半。这样的文件格式成了:xxx.pvr.ccz,cocos2d是可以识别的。

PVRTC2和PVRTC4是两种pvr压缩的图像格式,他们都是pvr文件。这两种图像格式比普通图像有更快的加载速度和更小的内存占用。

PVRTC4: Compressed format, 4 bits per pixel, ok image quality

PVRTC2: Compressed format, 2 bits per pixel, poor image quality


一般pvr格式文件的图像格式有:
RGBA8888: 32-bit texture with alpha channel, best image quality
RGBA4444: 16-bit texture with alpha channel, good image quality
RGB565: 16-bit texture without alpha channel, good image quality but no alpha (transparency)
图像占用内存的公式是:numBytes = width * height * bitsPerPixel / 8

也就是说2048*2048的RGBA8888占用内存16MB,而PVRTC4只占用2MB


这里提供一个 pvr 和 png 文件的转换工具,这个是一个命令行工具,需要在终端运行

使用步骤:

先进入这个工具的文件夹,使用终端运行:sudo cp ccz /usr/sbin/  

将工具拷到系统盘,

然后运行例子汇总的命令就可以了,需要在文件的当前文件夹下面运行


就是打开 终端 输入例子中的命令来进行操作

 ccz -net     //查看自己电脑的mac地址
 ccz -ccz abc.pvr.ccz //解压abc.pvr.ccz 为abc.pvr
 ccz -ccz abc.pvr.ccz -out xxx.pvr  //解压abc.pvr.ccz到输出文件名
 ccz -pvr abc.pvr //解压abc.pvr为abc.png
 ccz -crop abc.png //按abc.plist中图元配置裁剪abc.png为多个小图
 ccz -cczcrop abc.ccz //按abc.plist中图元配置裁剪abc.ccz为多个小图
 ccz -pvrcrop abc.pvr //按abc.plist中图元配置裁剪abc.pvr为多个小图 


链接:http://pan.baidu.com/s/1pJHVRdh密码: irjx


Last modification:January 1st, 1970 at 08:00 am
如果看了这个文章可以让你少加会班,可以请我喝杯可乐
已打赏名单
微信公众号

Leave a Comment