Apple's Technical Q&A on addressing flickering (QA1650)包括以下段落。 (重点煤矿。)glClear()如何提高性能?
您必须提供颜色与屏幕上的每个像素。在绘制代码的开始处,最好使用glClear()来初始化颜色缓冲区。一个全屏幕清楚每个颜色,深度和模板缓冲的(如果你使用它们)在帧的开始也可以一般提高应用程序的性能。
在其他平台上,我一直发现它是对的优化而不是如果要绘制到每个像素,请清除颜色缓冲区。 (为什么要浪费时间填写,如果你只是要覆写清晰的彩色颜色缓冲区?)
如何以glClear()的调用提高性能?
很多情况下,忽略清除颜色/深度/模板缓冲区的情况并非如此。正如我在其他答案中的一些评论中所解释的,它与现代GPU中的缓冲区压缩有关。就现代GPU而言,我在谈论Radeon 9xxx系列。清除这些缓冲区实际上是几乎所有GPU架构的性能提升。 – 2013-09-18 20:25:39