包体瘦身术
- RGBA与ASTC与ETC2压缩与实际对比体验
- Unity贴图压缩方式
- 官方文档
- 默认格式
- 安卓的各个格式注意事项
- 体积对比
- 单图片大小
- 安装包大小
- 实机表现
- RGBA32综合表现
- ASTC12x12综合表现
- ETC2综合表现
- 虚假的总结!
- 额外的测试报告
- RGBA32额外测试报告
- ASTC12x12综合表现
- ETC2额外测试报告
链接: 纹理压缩—包体瘦身术笔记.
RGBA与ASTC与ETC2压缩与实际对比体验
测试环境(第一次写,有需要补充可评论):
Unity版本:2019.4.11f1
手机:Realme Q2pro (联发科天玑800U+8G内存)
手机版本:Android11(RMX2175_11_C.12)
测试工具: Unity UPR
测试方法:总共143张1024RGBA贴图,转为Sprite(2D and UI)贴图类型,放入场景,导出安装包,
目的:使用三种压缩方式的贴图,测试压缩比和与之相关测试。
Unity贴图压缩方式
官方文档
链接: https://docs.unity3d.com/cn/2019.4/Manual/class-TextureImporterOverride.html.
默认格式

安卓的各个格式注意事项

体积对比
单图片大小
| 项目 | 单张图片大小 |
|---|---|
| RGBA | 4.0M |
| ASTC12x12 | 115.6Kb |
| ETC2 | 103.6Kb |
| 结论 | RGBA>>ASTC>ETC2 |

安装包大小
| 项目 | 安装包大小 |
|---|---|
| RGBA | 90.2M |
| ASTC12x12 | 31.8M |
| ETC2 | 36.2Kb |
| 结论 | RGBA>>ETC2>ASTC |

实机表现
实机表现上看时,1024贴图在只占屏幕1/10情况下,几乎时没有视觉差别。在电脑放到后,感官体验也接近(可放大单张图片找不同)
RGBA32综合表现
| 项目 | RGBA32综合表现 |
|---|---|
| 平均帧率 | 30.72fps |
| 纹理资源峰值 | 484.1MB! |

ASTC12x12综合表现
| 项目 | ASTC12x12综合表现 |
|---|---|
| 平均帧率 | 30.83fps |
| 纹理资源峰值 | 13.7MB |

ETC2综合表现
| 项目 | ETC2综合表现 |
|---|---|
| 平均帧率 | 30.73fps |
| 纹理资源峰值 | 121.1MB |

虚假的总结!
从综合表现上看,ASTC以绝对的优势获胜。
最小的安装包体积,很小的单图大小,最重要时,在手机渲染时候,对纹理读取压力最小(!!这点有待研究。因为差距实在太大,不能单纯的认为只是压缩格式的区别!!)
在其他额外测试报告中也没有看懂更多有效信息。等待更新精进吧(2012.8.14)
额外的测试报告
RGBA32额外测试报告



ASTC12x12综合表现



ETC2额外测试报告









![[图形学]ASTC纹理压缩格式](https://img-blog.csdnimg.cn/44789d058481487e8ad9303514df6f53.png#pic_center)









