私はglScissorを使用して、更新が必要な画面の部分だけを分離しようとしています。 私はすべてのフレームを更新する必要があるゲームエリアを持っていますが、UIエリアの更新頻度はそれほど高くありません。ゲームエリアは問題ありませんが、古いバッファデータのように見えるUI領域は常にちらつきます。glScissor help(iPhone OpenGL ES)
私には何が欠けていますか?ここで
は私のレンダリングコードです:
[EAGLContext setCurrentContext:context];
glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer);
if (needsUIUpdate)
{
// clear entire screen
glScissor(0, 0, 320, 480);
glClear(GL_COLOR_BUFFER_BIT);
needsUIUpdate = NO;
[self updateUI];
}
else
{
glScissor(0, 80, 320, 400);
glClear(GL_COLOR_BUFFER_BIT);
}
for (Cell* c in allCells)
[c animate];
glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
[context presentRenderbuffer:GL_RENDERBUFFER_OES];
そして、glScissorがなければ、すべてうまく見えますか? – lhunath
はい、私はglScissorを追加する前に、すべてうまくいきました。 – hyn