如何限制libGDX中的窗口大小调整尺寸?

时间:2016-10-13 03:50:00

标签: java libgdx

我想在桌面上将游戏的最小尺寸限制为170x267。我目前正在使用此代码:

@Override
public void resize(int width, int height) {
    gamePort.update(width, height);
    if (Gdx.app.getType() == ApplicationType.Desktop) {
        if (width < 170)
            Gdx.graphics.setWindowedMode(170, height);
        if (height < 267)
            Gdx.graphics.setWindowedMode(width, 267);
    }
}

但是,这会将窗口的X和Y位置设置为中心,有时会导致游戏窗口变为空白。

如何为游戏窗口设置最小尺寸?

2 个答案:

答案 0 :(得分:3)

您可以从LWJGL后端切换到本机支持此功能的LWJGL3后端。要切换,请在项目的根目录中更改build.gradle文件。改变这一行:

compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"

compile "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion"

并在DesktopLauncher中更改为Lwjgl3ApplicationConfiguration和Lwjgl3Application。然后,您可以在游戏配置中设置最小窗口大小:

public class DesktopLauncher {
   public static void main (String[] arg) {
      Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration();
      config.setWindowSizeLimits(170, 267, 9999, 9999);
      new Lwjgl3Application(new MyGdxGame(), config);
   }
}

答案 1 :(得分:-1)

您可以通过设置widthheight轻松设置桌面的屏幕尺寸。您必须打开Desktop文件夹并按Main.java文件并设置

cfg.width=170;
cfg.height=267;

像这样,您可以轻松设置桌面的屏幕宽度和高度。 这是一个示例代码。请仔细阅读。

public class Main {
    public static void main(String[] args) {
        LwjglApplicationConfiguration cfg = new LwjglApplicationConfiguration();
        cfg.title = "myGame";
        cfg.useGL30 = false;
        cfg.width =1280;
        cfg.height = 800;

        new LwjglApplication(new copterAdventure(), cfg);
    }
}