3

我是 OpenGL ES 的新手,我尝试绘制三角形,但我不明白在每一帧上调用 glClear(GL10.GL_COLOR_BUFFER_BIT) 的目的是什么?没有它,屏幕上会出现一些奇怪的伪影。我应该每每帧开始的时间?谢谢

4

1 回答 1

2

简化:如果你绘制一个三角形,只有实际包含三角形的帧缓冲区部分被重绘。因此,如果您绘制一次,然后将其移动一点并在下一帧再次绘制,而不调用 glClear,前一帧的内容仍将存在于帧缓冲区中。

这就是您的伪影的原因,也是glClear每次您怀疑显示的图像发生变化时都应该使用帧缓冲区的原因。对于大多数应用程序,这确实意味着:每一帧。

于 2013-03-19T17:53:45.367 回答