在我的测试程序的Android版本中,第一次运行它时一切正常,但随后运行它时,所有纹理都是白色块。
但是桌面版本很好,它只是安卓。此外,如果我在发布或调试中通过 Eclipse 运行程序,它每次都可以工作。
修复它的方法是,如果我转到任务管理器并"清除内存"。
我在启动时加载我的精灵表,我很确定我正在处理所有内容。
可能出了什么问题?
修复了它。我想我知道为什么,但不是 100%
在我的课堂上:公共类GameGraphics实现一次性{
我把它变成了一个单例:
public static GameGraphics getInstance(){
if(spritesInstance==null) {
spritesInstance=new GameGraphics();
spritesInstance.spriteSheet = new Texture(Gdx.files.internal("data/sprite_sheet.png"));
spritesInstance.sprites=TextureRegion.split(spritesInstance.spriteSheet, 32, 32);
for(TextureRegion r : spritesInstance.sprites[0]) r.flip(false,true);
}
return spritesInstance;
}
所以调用了 dissort,纹理在 libGDX 中被销毁,但我的实例仍然存在。为什么?libgdx/opengl还有其他类似的问题吗?