任何人都知道在iPhone上绘制多层2D OpenGL ES内容的最佳做法是什么?
例如,假设我想绘制一个复杂的全屏背景纹理,然后是旋转纹理,接着是顶部的另一个alpha混合纹理。
有没有办法只在ONCE绘制背景纹理,只在必要时绘制对上层的更改?
到目前为止我发现的所有东西都表明你应该总是glClear(),然后以正确的顺序绘制所有内容,每一帧,每一个刻度。但如果不改变,每秒抽取60次就没有任何意义......
谢谢!
答案 0 :(得分:0)
如果您的绘图将覆盖每个像素(并且您没有使用清晰颜色进行Alpha混合),则不必使用glClear()。 (你不必画出你看不到的东西。)
但是在大多数情况下,您需要每帧绘制背景。如果你的动画只发生在比屏幕更小的矩形中(其余部分保持静态)你可能只能重绘那个矩形,但这可能比它的价值更麻烦。
是什么让你的背景纹理变得复杂?它只是大(512x512)?