在 OpenGL 中加载更多较小的纹理与加载少量大纹理 Android
Loading more smaller textures vs. loading few large textures in OpenGL Android
我最近正在开发一个 2-D Android 游戏,我正在使用 GLSurafaceView
(OpenGL ES) 渲染纹理。我将图形组合成精灵表并将它们加载到设备内存 (GPU) 中。最近图量增长了不少..
我需要决定哪种方法更好以及为什么。因此,我应该加载 2-3 个大的 2048x2048 精灵表,还是加载 8-12 个较小的 1024x1024 精灵表?
这些方法如何影响性能、游戏加载时间、内存消耗?
通常情况下,较大的 Sprite 表越少越好,因为:
- 需要更少的状态更改。
- 更容易批量绘制调用。
也就是说,8-12 张在我的书中不算多。如果你有几百,我就会开始担心了 ;)
我最近正在开发一个 2-D Android 游戏,我正在使用 GLSurafaceView
(OpenGL ES) 渲染纹理。我将图形组合成精灵表并将它们加载到设备内存 (GPU) 中。最近图量增长了不少..
我需要决定哪种方法更好以及为什么。因此,我应该加载 2-3 个大的 2048x2048 精灵表,还是加载 8-12 个较小的 1024x1024 精灵表?
这些方法如何影响性能、游戏加载时间、内存消耗?
通常情况下,较大的 Sprite 表越少越好,因为:
- 需要更少的状态更改。
- 更容易批量绘制调用。
也就是说,8-12 张在我的书中不算多。如果你有几百,我就会开始担心了 ;)