Libgdx 缩放背景问题

Libgdx scaling background issue

所以我正在创建一个游戏,我将在其中绘制一个背景,但这个背景不会覆盖整个屏幕,即使我降低 window 尺寸它也不会覆盖整个屏幕 window.这是绘制背景的代码:

    Gdx.gl20.glClearColor(0.2F, 0.6F, 1F, 1F);
    Gdx.gl20.glClear(GL20.GL_COLOR_BUFFER_BIT);
    cam.update();
    sb.setProjectionMatrix(cam.combined);

    sb.begin();
    sb.draw(Assets.splash_spr_background, 0, 0);
    sb.end();

这是初始化精灵的代码:

public static Texture splash_tex_background;
public static Sprite splash_spr_background;

public static void init() 
{
    splash_tex_background = new Texture(Gdx.files.internal("Splash Screen/background.png"));
    splash_tex_background.setFilter(TextureFilter.Linear, TextureFilter.Linear);
    splash_spr_background = new Sprite(splash_tex_background);
}

最后是初始化相机和 spritebatch 东西的代码:

    cam = new OrthographicCamera();
    cam.setToOrtho(false, 1920, 1080);
    sb = new SpriteBatch();

现在我的问题是:为什么这不起作用?我做错了什么?

感谢您的帮助! :)

游戏不需要 1920x1080 分辨率。这显然是矫枉过正。想象一下,拥有较低规格设备的人会玩它。

因此您只需将屏幕设置为与背景相匹配即可:

cam.setToOrtho(false, 1280, 720);

如果您确实需要分辨率,您可以像这样拉伸背景:

background.setWrap(Texture.TextureWrap.ClampToEdge, Texture.TextureWrap.ClampToEdge);