我的问题是,我保持游戏世界的FitViewport的缩放方式使我可以在X轴上看到黑条,但是Y轴似乎不在意Gdx.graphics的限制,它超出了屏幕。
似乎正在发生的事情是,即使我通过了“世界宽度”和“世界高度”,它也会以错误的方式适合自己,根本不介意Y轴。
PlayScreen构造函数:
gameCamera = new OrthographicCamera();
gameCamera.setToOrtho(false);
gameViewport = new FitViewport(MyGame.WORLD_WIDTH,MyGame.WORLD_HEIGHT,gameCamera);
gameViewport.setScreenBounds(0,0,MyGame.WORLD_WIDTH,MyGame.WORLD_HEIGHT);
MyGame.java:
public static final int WORLD_WIDTH = 600;
public static final int WORLD_HEIGHT = 300;
render():
MyGame.batch.setProjectionMatrix(gameCamera.combined);
gameViewport.apply();
MyGame.batch.begin();
调整大小(整数宽度,整数高度):
gameViewport.update(width,height);
gameCamera.position.set(player.position.x + 200,player.position.y, 0);
最佳答案
解决该问题的方法与我认为的问题无关。
问题是我使用错误的坐标系和参考来生成敌人并束缚玩家的动作。现在,我使用gameViewport.getWorldHeight,这解决了我的问题。