gpt4 book ai didi

java - Libgdx 在运行时更新纹理

转载 作者:行者123 更新时间:2023-11-29 08:53:12 25 4
gpt4 key购买 nike

我需要在运行时更新纹理,我的代码是:

    public void updateTexture(Bitmap bmp) {
mTexture = new Texture( ImageHelper.bitmapToPixmap( bmp ) );
}

但它不起作用。有人可以帮助我吗?
谢谢

更新

    public void render(PerspectiveCamera camera) {

mTexture.bind();
mShaderProgram.begin();

mShaderProgram.setUniformMatrix("u_worldView", camera.combined );
mShaderProgram.setUniformi("u_texture", 0);
mMesh.render(mShaderProgram, GL20.GL_TRIANGLES);

mShaderProgram.end();
}

新问题

我在所有对象上都得到了第一个旧纹理。

最佳答案

你的问题是你在打电话

mTexture.disose();

释放对象,然后您尝试将另一个对象分配给它。这永远行不通。相反,您可以做的是:

public void updateTexture(Bitmap bmp) {
mTexture = new Texture( ImageHelper.bitmapToPixmap( bmp ) );
}

这应该可以解决问题。尽管从不建议这样做,因为它会在同一个实例中创建另一个对象,但无论如何,对吧?

关于java - Libgdx 在运行时更新纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21651614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com