我正在使用scene2d。这是我的代码:
group.addActor(new Actor() {
@Override
public Actor hit(float arg0, float arg1) {
return null;
}
@Override
public void draw(SpriteBatch batch, float arg1) {
batch.end();
shapeRenderer.begin(ShapeType.FilledRectangle);
shapeRenderer.setColor(Color.RED);
shapeRenderer.filledRect(0, 0, 300, 20);
shapeRenderer.end();
batch.begin();
}
});
问题是它相对于屏幕(x = 0,y = 0)绘制这个矩形,但我需要相对于我的group绘制它。但是,如果我用以下方法绘制其他实体:
batch.draw(texture, 0, 0, width, height);
它正确地绘制在(x = 0,y = 0)相对于我的组(距组左下角 0,0 像素)。
任何建议如何在scene2d中实现形状绘制?有人可以解释为什么这两个电话的工作方式不同吗?