LibGDX 缩减规模

LibGDX Scaling down

我试图通过直接设置宽度和高度来缩小 512 x 256 的火箭图像。当我发射它时,火箭图像像素化且质量非常差,尽管它应该是清晰的矢量图像。我想知道如何适当地缩小它以保持质量。

 public GameScreen(){

        cam = new OrthographicCamera();
        cam.setToOrtho(false, 600, 800);

        batch = new SpriteBatch();
        img = new Texture(Gdx.files.internal("data/rocket.png"));
        batch.setProjectionMatrix(cam.combined);
    }

    @Override
    public void show() {

    }

    @Override
    public void render(float delta) {

        cam.update();

        Gdx.gl.glClearColor(0, 0, 0, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);


        batch.begin();
        batch.draw(img,10, 10, 100, 60);
        batch.end();
    }

正如 Tenfour04 在评论中提到的,您需要在启用 mipmap 的情况下初始化纹理 class。然后使用 setFilter 方法设置纹理过滤器。

img = new Texture(Gdx.files.internal("data/rocket.png"), true);
img.setFilter(Texture.TextureFilter.MipMapLinearNearest, Texture.TextureFilter.Nearest);