我正在通过LibGDX框架,它提供了一个包装器来进行opengl调用。我经常遇到以下一对功能:
Gdx.gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
documentation(来自OpenGL)解释说glClearColor允许你:
指定清除颜色缓冲区时使用的红色,绿色,蓝色和Alpha值。
在这里选择特定的清晰颜色的目的是什么,当它被渲染的任何内容立即覆盖时?你应该选择与你的场景相匹配的颜色吗?是否用于设置场景的背景?
答案 0 :(得分:4)
如果实际上覆盖了渲染的每个帧中的每个像素,则不需要完全清除颜色缓冲区 (但通常,您仍然需要清除深度缓冲区)。 / p>
但是,有很多用例需要清除缓冲区,并且能够选择背景颜色是一个很有用的功能。