LibGDX 正方形拉伸分辨率

LibGDX square stretches with resolution

我假设 ShapeRenderer.rect 以像素为单位绘制,但当我拉伸分辨率并将其变成矩形时它会拉伸正方形。

        shapeRenderer.identity();
        shapeRenderer.begin(ShapeType.Filled);
        shapeRenderer.setColor(Color.BLUE);
        shapeRenderer.rect(0, 0, 100, 100);
        shapeRenderer.end();

我假设您使用的是正交相机

如果你写

camera = new OrthographicCamera(constant_Width, constant_Height);

这将导致您的矩形被拉伸,解决此问题的一种方法是使用比率

camera = new Orthographic Camera(Gdx.graphics.getWidth/Ratio, Gdx.graphics.getHeight/Ratio);

这应该可以解决您的问题。 享受:)

编辑:

我怎么忘了这部分

声明相机后,您需要执行此操作

camera.translate(Gdx.graphics.getWidth/Ratio/2, Gdx.graphics.getHeight/Ratio/2)

如果您错过了那条线,您 (0, 0) 将位于屏幕中央。我假设您希望 (0, 0) 位于屏幕的左下角。