GPU PRO 5 - 4.6 Adaptive Scalable Texture Compression 笔记

本笔记仅为个人的理解,如果有误欢迎指出。

Adaptive Scalable Texture Compression

自适应可拓展纹理压缩

简称ASTC,移动端一种常用的贴图压缩格式,在现代的游戏引擎中多有应用,比如Untiy。

ASTC 是 ARM 公司开发的一种纹理压缩格式,其目标是为此前种类繁杂、灵活性不足的纹理压缩格式提供一种统一且灵活的解决方案。它是一种基于块的纹理压缩算法。

基于块的意思是对数据的处理都是基于Block的,也就是图片会被分割成很多的大小相同的小的Block,然后一个Block的数据会被用更少的数据表示,压缩后的数据也只用来表示这个Block的数据。

而ASTC中,每个块都可以存储最多4个顶点(正方形的四个角)的颜色,并根据从预设的颜色计算公式中挑选合适的算法保存。如下图,在文章中这个算法称为分布模式(Distribution Pattern)

最后,在解压缩时就可以根据块上存的顶点颜色以及颜色的分布模式计算出当前块压缩前的颜色。由此可见,ASTC是一种有损的图像压缩格式,因为不是所有颜色块都能有完美的颜色分布模式保证颜色和压缩前一致。

同时,一个Block中,可能存在多个符合条件的分布模式,ASTC算法就会在这里对压缩后最终图像的质量和时间做权衡。质量要求越高,压缩算法在最终决定最佳方案之前,就会尝试更多种候选组合。

但是解压缩的时间是固定的。

参考资料:

深入理解ASTC

相关推荐
宵时待雨15 分钟前
linux笔记归纳18:传输层协议TCP
linux·网络·笔记·网络协议·tcp/ip
逆境不可逃22 分钟前
Pi Agent 学习笔记:一次提问背后的工具调用循环
java·笔记·学习
Ztt66666666641 分钟前
紫釉高筒壶向上收紧,修长器身更显精神
经验分享·笔记·其他·百度·微信公众平台
疯狂打码的少年1 小时前
【计算机网络】UDP协议与TCP/UDP对比(面向连接vs无连接)
笔记·tcp/ip·计算机网络·udp
巧克力味的桃子2 小时前
模拟大厂大模型方向面试题
笔记
Peng7112 小时前
浙大数据可视化课程学习笔记
笔记·学习·信息可视化
今儿敲了吗2 小时前
02词云生成器
笔记·python
hanlin032 小时前
刷题笔记:力扣第287题-寻找重复数
笔记·算法·leetcode
你想知道什么?3 小时前
神经网络-学习笔记
笔记·神经网络·学习
疯狂打码的少年4 小时前
【计算机网络】IP地址与子网划分(IP地址分类与特殊地址)
网络·笔记·tcp/ip·计算机网络