libgdx 视口适合不同的屏幕
libgdx viewport fit different screens
我在让我的游戏适应不同屏幕时遇到了问题。
我在舞台 class.
中声明了视口宽度和高度
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 设备上它看起来向上伸展。我阅读了有关视口的文档,但如何使用这些变量在此处实现它?我知道有人问过类似的问题,但我想知道可以使用这些特定变量来实现视口,这样我可能会更好地理解它。
您可能想使用 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
我在让我的游戏适应不同屏幕时遇到了问题。 我在舞台 class.
中声明了视口宽度和高度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 设备上它看起来向上伸展。我阅读了有关视口的文档,但如何使用这些变量在此处实现它?我知道有人问过类似的问题,但我想知道可以使用这些特定变量来实现视口,这样我可能会更好地理解它。
您可能想使用 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