我需要在屏幕上绘制精灵和形状,
在render方法中多次调用SpriteBatch和ShapeRenderer的begin和end方法是否可行?
有没有方法可以避免这种情况?
我的需求。
shapeRenderer.begin(ShapeRenderer.ShapeType.Line);
shapeRenderer.setProjectionMatrix(batch.getProjectionMatrix());
shapeRenderer.rect(....);
shapeRenderer.end();
batch.begin();
for (int i = 0; i < spriteList.size(); i++) {
spriteList.get(i).render(batch);
}
batch.end();
shapeRenderer.begin(ShapeRenderer.ShapeType.Filled);
shapeRenderer.setProjectionMatrix(batch.getProjectionMatrix());
shapeRenderer.setColor(Color.GRAY.r,Color.GRAY.g, Color.GRAY.b, 1);
shapeRenderer.rect(....);
shapeRenderer.end();
batch.begin();
score.render(batch);
batch.end();