Эй, у меня проблема с ProjectionMatrix.Я нарисовал прямоугольник с той же x-координатой, что и моя метка, но они не в той же позиции.Есть ли что-то вроде ProjectionMatrix для сцены?
@Override
public void create() {
batch = new SpriteBatch();
stage = new Stage();
shapeRenderer = new ShapeRenderer();
camera = new OrthographicCamera();
camera.setToOrtho(false, 480, 800);
//create label
generator = new FreeTypeFontGenerator(Gdx.files.internal("arial-black.ttf"));
parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();
parameter.size = 50;
parameter.color = Color.BLACK;
font = generator.generateFont(parameter);
labelStyle = new Label.LabelStyle();
labelStyle.font = font;
label = new Label("text", labelStyle);
label.setPosition(240, 400);
stage.addActor(label);
}
@Override
public void render() {
delta = Gdx.graphics.getDeltaTime();
Gdx.gl.glClearColor(255, 255, 255, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
// tell the camera to update its matrices.
camera.update();
// tell the SpriteBatch to render in the
// coordinate system specified by the camera.
batch.setProjectionMatrix(camera.combined);
shapeRenderer.setProjectionMatrix(batch.getProjectionMatrix());
stage.act(delta);
stage.draw();
shapeRenderer.begin(ShapeRenderer.ShapeType.Filled);
shapeRenderer.setColor(Color.BLACK);
shapeRenderer.rect(label.getX(), 0, 50, 50);
shapeRenderer.end();
}