图形学入门—纹理压缩
前记:快学啊----------------------------------------mx
基础:
图片压缩格式基于整张图片进行压缩,无法直接实现单个像素的解析
图片压缩格式无法被GPU识别,还需要经过CPU解压缩成非压缩纹理格式才能被识别
纹理压缩格式基于块压缩,能够更快读取像素所属的字节块进行解压缩以支持随机访问
ASTC纹理压缩格式介绍
ASTC是在OpenGL ES3.0出现后在2012年中产生的一种业界领先的纹理压缩格式,它的压缩分块从4x4到12x12最终可以压缩到每个像素占用1bit以下,压缩比例有多种可选。ASTC格式支持RGBA,且适用于2的幂次方长宽等比尺寸和无尺寸要求的NPOT(非2的幂次方)纹理。
并且相对于ETC来说,合理选择块数大小不仅能做到体积变小,更能达到压缩质量更好的效果,
并且块数越多压缩率越好但是压缩质量会变差
无Alpha通道的贴图建议压缩格式为ASTC 8x8。如果贴图为法线贴图,建议压缩格式为ASTC 5x5。有更高要求的贴图(比如面部、场景地面),可以设置压缩格式为ASTC 6x6,法线贴图为ASTC 4x4。
有Alpha通道的贴图建议压缩格式为ASTC 5x5。有更高要求的贴图(比如特效、UI),可以设置压缩格式为ASTC 4x4。
在同一压缩格式下,贴图容量不变,有无Alpha通道对压缩结果有很大影响,带Alpha通道的贴图压缩质量下降。
相关链接:
https://www.bilibili.com/video/BV1Av411K7bt?p=2
https://zhuanlan.zhihu.com/p/158740249