在SpriteBatch.begin / end中嵌套ShapeRenderer.begin / end

时间:2013-01-05 22:40:45

标签: java render libgdx shape

是否可以在ShapeRenderer SpriteBatchbegin来电之间使用end来绘制形状。

我试过但没有结果,只绘制了SpriteBatch纹理,场景中没有形状。示例代码如下:

shapeRenderer.begin(ShapeType.FilledCircle);
shapeRenderer.setColor(0f, 1f, 0f, 1f);
shapeRenderer.filledCircle( 100, 100, 100);
shapeRenderer.end();

我有一个由这些命令创建的正交相机:

camera = new OrthographicCamera(1, Gdx.graphics.getHeight() / Gdx.graphics.getWidth());
camera.setToOrtho(true);

1 个答案:

答案 0 :(得分:8)

ShapeRendererSpriteBatch都在OpenGL中设置状态,他们希望在使用过程中保持不变。嵌套它们可能会产生问题。请参阅this post in the badlogic forum

这应该在文档中更清楚地说明。