2013-04-07 57 views
1

我决定使用Libgdx ShapeRenderer来绘制多边形。我想看看如何有效的,这是和让相机经过x轴,而渲染,但奇怪的事情发生,看到这样的画面:libgdx ShapeRenderer用移动摄像头渲染多次

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

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

+2

你清除你呈现在屏幕前? – 2013-04-07 22:09:31

+0

谢谢!当我改变我的代码时,我删除了它。 – vtni 2013-04-07 22:33:48

回答

2

调用之前您呈现:

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