ASTC
是Adaptive Scalable Texture Compression
的简称,是在移动端流行的贴图压缩方案。当平台使用ASTC打包时,UE默认使用Intel ISPC Texture Compressor压缩贴图,但它具有一些局限性,只支持8x8
及以上的压缩规格,10x10
和12x12
则不支持,如果在项目中指定它们,也是会使用8x8
的规格。除ISPC外,引擎中也提供了ARM的astc-encoder压缩方式,可以支持8x8
以下的规格,但默认未启用,而且引擎中的集成压缩效率非常低,在大规模资源中,使用astc-encoder压缩贴图对Cook耗时是非常大的挑战。
本篇文章分析UE中贴图使用ASTC压缩的配置以及实现方式,以及引擎中astc-encoder的压缩效率和优化思路。