资源纹理压缩
图形资源内存
小游戏运行过程中,内存过大是最为困扰开发者的一个问题。因为小游戏的内存使用过大时,在操作系统内存管理机制下,有可能会导致闪退或无法运行从而使得用户流失。 据统计有超过千款小游戏内存使用不佳,因内存产生的 Crash 率居高不小。
在内存的使用中, 图形内存(graphic memory)往往是游戏内存消耗大户。对于重度游戏我们发现图形渲染所使用的内存占比更大。因此优化图形内存对于整体内存使用率的降低是非常有必要的。
纹理压缩
对于图形渲染资源的内存使用是否有比较好的办法去降低呢? 纹理压缩是一种专为在计算机图形渲染系统中存储纹理而使用的图像压缩技术。 与普通图像压缩算法的不同之处在于,纹理压缩算法为纹素的随机存取做了优化。
压缩纹理兼容性
平台支持的压缩格式上来看,目前小游戏各设备平台能够支持的压缩纹理格式如图表所示,此图表为各个平台下下所能支持的压缩纹理格式的最大集
| 平台设备 | 压缩纹理格式 |
|---|---|
| IOS | ASTC、PVRTC、ETC1(仅高性能模式) |
| Android | ASTC、ETC1、ETC2 |
| Windows/Mac | XT5、DXT3、DXT1、BC4/5/7 |
| 开发者工具 | DXT5、DXT3、DXT1、BC4/5/7 |
通常情况下,移动设备平台推荐使用ASTC,而在PC、Mac等场景下,推荐使用DXT5
开发者在开发过程中,还应当充分考虑不同压缩纹理格式在不同的设备平台、设备平台下的操作系统版本支持、芯片支持等几个方面,来使用兼容性最高的压缩纹理格式,保障游戏用户的正常游戏体验。
