我正在使用大量的精灵为Android开发2D游戏。我正在使用OpenGL ES在屏幕上绘图。我把精灵分成几张照片(大约7张)。我读过,将图片加载到内存大部分时间都是如此。每张图片都包含不同类型的图像:例如 - 背景元素,敌方单位等等。我按照定义的顺序加载它们:首先是背景图片,所以背景元素是在底部绘制的,然后是敌方单位等。但是,如果我想在画布顶部绘制背景元素,我应该怎么做。我应该用背景元素加载两次图片吗?或者将这些特殊元素存储在两张图片中 - 背景图片和包含顶部元素的图片。还是有更好的方法?谢谢!
答案 0 :(得分:1)
加载与渲染无关。只要你在之后渲染你已经加载了它,那么你就没事了。事物被渲染的顺序不受加载它们的顺序的影响。
现在,如果这是一个内存问题(即:你不能一次加载所有内容),那么你需要采取的步骤依赖于非常你正在做什么。我们不能给你一些比一般建议更多的东西,因为我们不知道你正在做什么。
通常,您需要将渲染的世界分解为适合内存的块。这将限制你的设计:你不能使用来自该块之外的东西(无论是背景,敌人单位等等)。由于您是在有限的平台上开发的,因此您将不得不忍受这些限制。