ETC1(Ericsson Texture Compression
)是一种有损纹理压缩
技术,2005年初由爱立信研究院参与研发,目的是用于减少移动设备
和嵌入式系统中纹理存储的内存占用
,应用场景见于游戏、VR、AR等需要大量的纹理资源
来创建高质量的视觉效果
以及复杂的动画效果场景
。
ETC1可提供RGB888像素格式
的6倍压缩率
,不支持压缩含有Alpha通道的图像
,但可设置第二纹理文件用于 Alpha 通道。
如下图所示,为OpenGLES中加载ETC1纹理数组,播放的帧动画效果:
ETC1纹理格式有如下特点:
- 无透明度支持:ETC1压缩纹理
只支持RGB格式
,不支持Alpha通道
(如需透明度,可以使用ETC1_RGB + ETC1_Alpha
纹理对的方法,将RGB888
和单独Alpha
分别压缩为.pkm文件同时加载使用)。 - 固定压缩率:ETC1将每个
4x4像素块压缩为64位
,实现(4x4x(8+8+8)):64=6:1
的压缩比。