为啥我们的项目中从来不使用ETC1纹理格式

我们通过不同格式的效果来比较下就明白了

无压缩RGBA32格式的效果(所有GPU支持)

请无视接缝问题,那个是美术的UV给展错了。。。

ATC压缩格式(Adreno系列GPU支持的格式)

肉眼几乎干不出差别,饱和度有稍许下降
PS:DXT、PVR的效果也差不多是这样,这里就不贴了,有兴趣的人自己可以试验下

最后是万恶的ETC1(所有GPU支持)

注意下图的红色箭头所指的线,这个仅出现在ETC1格式上,怀疑是它的压缩算法有缺陷,但具体原因并未做过调查


结论

这东西根本不能用啊,特别是对比度比较大的图片,会产生各种莫名其妙的瑕疵。
很纳闷一些项目用ETC1是怎么处理这种效果的,问了下公司里别的项目组的老大,建议是换成RGBA16或者RGB16加上降低解析度也比用ETC1效果好。

PS:OpenGL ES果然该死,这个唯一默认支持的压缩格式ETC1不但没Alpha通道,压缩之后还会产生这么大的瑕疵。。。









posted on 2015-06-07 15:46  MobileFish  阅读(957)  评论(0编辑  收藏  举报

导航