我过去曾编写过一个 Android 游戏,但总是遇到内存问题,因为我的图像非常大~(每个 1000x400 像素)。我现在想知道是否有必要将图像仅作为位图加载到内存中。是否有任何理由不以某种无损压缩格式加载位图?
我对图像压缩/解压缩效率一无所知,但我认为会有性能问题。但是我觉得“简单”的压缩算法似乎不能太占用处理器资源,即使它们只将图像减少到未压缩内存占用的一半。
我过去曾编写过一个 Android 游戏,但总是遇到内存问题,因为我的图像非常大~(每个 1000x400 像素)。我现在想知道是否有必要将图像仅作为位图加载到内存中。是否有任何理由不以某种无损压缩格式加载位图?
我对图像压缩/解压缩效率一无所知,但我认为会有性能问题。但是我觉得“简单”的压缩算法似乎不能太占用处理器资源,即使它们只将图像减少到未压缩内存占用的一半。
问题是在某种程度上你必须有图像的逐像素表示,因此你必须有一个位图。
最好的解决方案是切换到 OpenGL 可以使用的压缩图形类型,正如 gamedev.stackexchange.com 上的 thsi 问题所回答的那样:
https://gamedev.stackexchange.com/a/28463/8126
不幸的是,我没有使用 OpenGL 的经验。