为什么我们需要使用
清除每一帧的屏幕@Override
public void render() {
Gdx.graphics.getGL20().glClearColor( 1, 0, 0, 1 );
Gdx.graphics.getGL20().glClear( GL20.GL_COLOR_BUFFER_BIT | GL20.GL_DEPTH_BUFFER_BIT );
// scene render code...
}
仅仅重新绘制背景,然后重新绘制其他元素是不够的?
答案 0 :(得分:3)
告诉OpenGL清除屏幕让它知道它不需要保留最后一帧的图像。 OpenGL ES设计用于从头开始重绘每个帧的屏幕,因此如果您不清除屏幕,它会假定您要保留最后一帧中的所有数据,并且不得不浪费时间将旧图像复制到新框架。
您不必每帧都致电glClearColor
。它只是更改清除颜色缓冲区时将使用的颜色设置。