我决定使用Libgdx ShapeRenderer绘制多边形。我想看看这有多有效,并让相机在渲染时通过x轴,但是有些奇怪的事情发生了,请看这张图片:



在右侧,我没有移动相机,但是在左侧,我通过

camera.translate(0.1f, 0);


这是我的代码:

public void setSize (int width, int height) {
    float aspectRatio = (float) width / (float) height;
    camera = new OrthographicCamera(30f * aspectRatio, 30f);
}
public void render() {
    camera.update();
    shapeRenderer.setProjectionMatrix(camera.combined);
    shapeRenderer.begin(ShapeType.Line);
    shapeRenderer.identity();
    camera.translate(0.1f, 0);
    shapeRenderer.setColor(0, 0, 1, 1);
    shapeRenderer.polygon(new float[] {0,0,5,5,5,2.5f, 10,12.5f, 10,0});
    shapeRenderer.end();
}


我不知道问题是什么,但我认为它不会删除其下面的图像。

最佳答案

渲染前致电:

    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);

09-05 18:14
查看更多