我决定使用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);