我的代码有问题,在我开始使用步骤绘制我的UI之后出现,我有三个用Batch绘制的东西,一个舞台有2个按钮由Stage绘制,但只有2个我的&# 34;精灵"正在被吸引。这是代码:
public void render(float delta) {
Gdx.gl.glClearColor(0.95F, 0.95F, 0.95F, 0.95F);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
deltaTime = Gdx.graphics.getDeltaTime();
camera.update();
generalUpdate(touch, camera, deltaTime, pointer);
bounce(deltaTime);
stage.setCamera(camera);
batch.setProjectionMatrix(camera.combined);
batch.begin();
batch.draw(Assets.spr_bg, 0, 0);
batch.draw(Assets.spr_title, 540-Assets.spr_title.getWidth()/2, titleY-Assets.spr_title.getHeight()/2);
Assets.font_small.draw(batch, "some text", 540-Assets.font_small.getBounds("(c)2014 HateStone Games").width/2, 1920-64-Assets.font_small.getBounds("(c) HateStone Games").height/2);
stage.draw();
batch.end();
}
这是文字"有些文字"它没有被绘制出来,如果我把它评论出来,它就会变得疯狂,标题精灵也不会被绘制出来,并且会随机出现一个灰色框。
如果我移动" stage.draw();"批次之外它没有被绘制
答案 0 :(得分:5)
Stage
有自己的SpriteBatch
,它可以绘制所有内容。因此,begin()
SpriteBatch
而另一个SpriteBatch
正在绘制。所以在致电batch.end()
之前请致电stage.draw()
。这应该可以解决你的问题。