libgdx视口适合不同的屏幕

时间:2017-04-13 09:12:08

标签: libgdx viewport

我遇到了在不同屏幕上安装游戏的问题。 我在舞台类中声明了视口宽度和高度。

public static final int VIEWPORT_WIDTH = 20;
public static final int VIEWPORT_HEIGHT = 30;

我设置了相机

camera = new OrthographicCamera(VIEWPORT_WIDTH, VIEWPORT_HEIGHT);
camera.position.set(camera.viewportWidth/2, camera.viewportHeight/2, 0f);

我将桌面应用中的屏幕宽度和高度设置为

public static final int APP_WIDTH = 800;
public static final int APP_HEIGHT = 900;

在桌面上一切看起来都不错,但在我的Android设备上,它看起来很向上。我阅读了有关视口的文档,但是如何使用这些变量在这里实现呢?我知道有类似的问题,但我想知道可以使用这些特定变量实现视口,这样我可能会更好地理解它。

1 个答案:

答案 0 :(得分:1)

您可能想要使用ExtendViewport。这扩展了世界1种方式来填充整个屏幕。

你的代码看起来像这样:

private Viewport viewport;
private Camera camera;

public void create() {
    camera = new OrthographicCamera();
    viewport = new ExtendViewport(VIEWPORT_WIDTH , VIEWPORT_HEIGHT, camera);
}


public void resize(int width, int height) {
    viewport.update(width, height);
}

在此处阅读更多内容:https://github.com/libgdx/libgdx/wiki/Viewports#extendviewport