私がしたいことは、自分の世界の仮想サイズを持ち、アスペクト比を変更することなく画面上で世界を拡大することです.FitViewportは最良の候補のようです。ステージ上で私のビューポートをどのように初期化したかlibGDX - FitViewportはステージを正確に縮尺しません
public class PlayStage extends Stage{
public static final int WIDTH = 480;
public static final int HEIGHT = 800;
private final Vector2 gravity = new Vector2(0.f, -9.8f);
private World physWorld;
public PlayStage(){
super();
OrthographicCamera camera = new OrthographicCamera();
camera.setToOrtho(false, WIDTH, HEIGHT);
setViewport(new FitViewport(WIDTH, HEIGHT, camera));
physWorld = new World(gravity, false);
Gdx.input.setInputProcessor(this);
Ball ball = new Ball(physWorld);
setKeyboardFocus(ball);
addActor(ball);
}
@Override
public void draw() {
super.draw();
}
@Override
public void act(float delta) {
super.act(delta);
physWorld.step(delta, 10, 5);
}
@Override
public void dispose() {
super.dispose();
physWorld.dispose();
}}
これは、レンダリング時にスプライトがどのように見えるかを示します(x座標では大きすぎます)。また、私の俳優のためのタッチイベントもありません。