저는 Screen
을 사용하고 있습니다.libgdx에서 뷰포트를 사용하는 스테이지의 표 요소는 센터 대신 기본값의 오른쪽 상단에 표시됩니다.
내 Stage
에 Table
클래스를 사용하면 화면 왼쪽 상단에 Table
을 표시하고 싶지만 기본값은 내 화면 오른쪽 상단에 표시됩니다.
tableLeft.left()
을 호출하면 테이블이 화면의 상단 중앙으로 이동합니다. tableLeft.top()
을 사용하면 화면 밖으로 tabe가 이동합니다. 뷰포트를 사용하지 않는 경우 완벽하게 작동하지만 다른 문제가 발생합니다.
약 2 주 동안 카메라와 관측점에 대해 지금 읽고 있으며, 위키에있는 공식 libgdx 자습서와 같이 읽은 후에도 어떻게 작동하는지는 여전히 혼란 스럽습니다. 나는 그것을 할 수 있었다. 예를 들어, resize() 메서드에서 모든 것을 제거 할 수 있고 출력이 전혀 변경되지 않는 이유가 전혀 없습니다.
내 코드는 다음과 같습니다
@Override
public void show() {
....
camera = new OrthographicCamera(1920, 1080);
viewport = new FitViewport(1920, 1080, camera);
viewport.apply();
....
batch = new SpriteBatch();
....
stage = new Stage(viewport, batch);
Table tableLeft = new Table();
tableLeft.add(new Label("Dummy Label", skin, "default"));
stage.addActor(tableLeft);
.....
}
@Override
public void resize(int width, int height) {
viewport.update(width, height, true);
stage.getViewport().update(width, height, true);
camera.position.set(camera.viewportWidth/2, camera.viewportHeight/2, 0);
}