我想将桌面游戏的最小尺寸限制为 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);
}
}
Run Code Online (Sandbox Code Playgroud)
然而,这会将窗口的 X 和 Y 位置设置为中心,有时会导致游戏窗口变为空白。
如何设置游戏窗口的最小尺寸?
您可以从 LWJGL 后端切换到 LWJGL3 后端,后者本身支持此功能。要进行切换,请更改项目根目录中的 build.gradle 文件。更改这一行:
compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
Run Code Online (Sandbox Code Playgroud)
到
compile "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion"
Run Code Online (Sandbox Code Playgroud)
并在 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);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2451 次 |
| 最近记录: |