1

我决定使用 LibgdxShapeRenderer来绘制多边形。我想看看这个效率有多高,让相机在渲染的时候通过x轴,但是发生了一些奇怪的事情,看这张图:

http://img255.imageshack.us/img255/2523/testfl.png

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

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();
}

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

4

1 回答 1

2

在渲染之前调用:

    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
于 2013-06-19T01:16:46.583 回答