【问题标题】:libGDX game resolution set to 1920x1080 need to scale down for smaller devices设置为 1920x1080 的 libGDX 游戏分辨率需要针对较小的设备按比例缩小
【发布时间】:2015-03-26 02:38:19
【问题描述】:

我的游戏物理和碰撞都是 1920x1080 并且是多人游戏。它仅适用于 1080p 屏幕;如何缩小游戏以适应较小的屏幕?

视口似乎只能让我向上而不是向下。我只是想拉伸纵横比。

【问题讨论】:

  • 你的设置代码是从什么开始的?这个config wiki page 对你有帮助吗?
  • @dvhh 基本上我想在 1920 到 1080 渲染游戏,然后拉伸它以使其适合任何屏幕。出于物理等目的,我需要保留每个像素。看来 Scaling.stretch 视口是我想要的,但我似乎没有正确实现它。

标签: java libgdx


【解决方案1】:

要放大或缩小,您需要像这样创建一个 ViewPort。

Viewport viewport = new ScalingViewport(Scaling.stretch,width,height,camera);

Scaling.stretch 意味着它将缩放屏幕以适应您为宽度和高度设置的分辨率。

您忘记的关键部分是您不能再使用 Gdx.graphics.getHeight()。

相反,您可以像这样使用它

camera.position.set(camera.viewportWidth/2,camera.viewportHeight/2,0);

在通常使用 Gdx.graphics.getWidth() 的地方使用 camera.viewportWidth 等等。此外,例如,当您从用户输入中获取坐标时,请不要忘记在 vector3 上使用 camera.unproject,这将修复坐标以显示在您的屏幕上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-08
    • 1970-01-01
    • 2022-06-14
    • 1970-01-01
    相关资源
    最近更新 更多