如何在质量下降不大的情况下降低一倍的占用?如何让臃肿的美术资源压缩再压缩?
JPEG->WDP/WEBP
大部分项目都陆续废掉了JPEG,而最好的代替品是微软的HD Photo,wdp格式,在PSNR差不多的情况下,wdp能比JPEG小一倍多。
(wdp的encoder/decoder不好找的话,我这里有一份微软的库)
观察下面的演示图片不要缩放PDF,用100%显示才看得清楚差别
JPEG 16.18 KB,可以看出脸部方块已经很严重,头发等高频部分已经看不清楚,帽子和墙面质量损失严重,而下面这张WDP文件(HDPHOTO,XnView可以转换)只有13.85KB大小,质量却比JPEG好很多。(通常情况下峰值信噪比差不多的话,WDP能够小一倍):
压缩比从强到弱依次是:WDP>WEBP>JPEG2000>JPEG。因此换用WDP格式能缩小不少资源。
PNG->WEBP
非界面元素,仅仅是为了使用ARGB32的资源,可以用webp的带alpha有损格式代替,能节省不少。
实时纹理压缩
PS Vita里面已经大范围用到了实时纹理压缩方法,DXT格式存储纹理仅仅是为了方便显卡,但是它的地压缩率却害苦了硬盘。废除DXT格式,用wdp格式或者webp格式有损保存图片(不要用JPEG了,JPEG太差)。运行时动态载入并且动态生成dxt格式再载入显卡。如此在质量微弱损失的情况下,可以至少获得4-5倍的空间节省。
PS Vita使用的动态生成dxt的库叫: