我刚刚进入手机游戏的LibGDX,遇到了一个我以前不需要处理电脑游戏,屏幕大小和分辨率不同的问题。
我一直在寻找答案并尝试一些不同的东西,但似乎没有任何效果。
我的代码atm包含一个正交相机,并将其视点设置为我从Gdx.graphics.getWidth()收到的屏幕宽度和高度;
我正在尝试为菜单atm执行此操作,但它必须继续执行由瓷砖组成的实际游戏。(Tiled Sidescroller)
当前代码:
private Texture MenuBack = new Texture(Gdx.files.internal("Img/Menu_Back.png"));
SpriteBatch sb = new SpriteBatch();
float ScreenW = 1280;
float ScreenH = 720;
OrthographicCamera cam;
@Override
public void render(float delta) {
cam = new OrthographicCamera();
cam.setToOrtho(false, ScreenW, ScreenH);
cam.viewportHeight = ScreenH;
cam.viewportWidth = ScreenW;
cam.update();
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
sb.begin();
sb.draw(MenuBack, 0, 0);
sb.end();
}
我不完全确定为什么它不起作用。我的目的是从最合适的尺寸向上或向下扩展所有尺寸,这样我就不必为可能不受欢迎的少数尺寸添加额外的图像。
此外,在执行向上或向下缩放时,使用具有actor或SpriteBatch的舞台会更好。
更新: 我试图使用视点但我无法使用我的1280x720背景来正确缩放
感谢您的帮助