我有一款基本上已经完成的iPhone游戏,但是我花了一些时间进行分析,因为我希望尽可能降低功耗,但我是一个OpenGL ES菜鸟所以我正在寻找一些指示。
游戏是一个相当简单的益智游戏,所以90%的时间董事会无缘无故地重绘。目前我有一个'脏'标志,只有在设置时才会渲染任何内容,但是当我大部分时间只需要更新时,我会绘制所有内容(即计时器,或其中一件)。
是否有与OpenGL一起使用的常见策略仅用于更新屏幕的某些部分,或者它是否假设您想要一直重绘所有内容?
答案 0 :(得分:3)
您的应用程序应该等到场景中的某些内容发生变化才能渲染新帧。核心动画缓存呈现给用户的最后一个图像并继续显示它直到呈现新帧。因此,您不需要每次都绘制,只需检查更新,并仅在有任何更新时绘制。 编辑:有关更多详细信息,请查看opengl es编程指南 - 这是[链接] http://developer.apple.com/library/ios/#documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/Performance/Performance.html