在LibGDX中创建精灵的标准方法是
Texture texture = new Texture(Gdx.files.internal("myTexture.jpb");
Srite sprite = new Sprite(texture);
还有另一种更短的方式
Sprite sprite = new Sprite(new Texture(Gdx.files.internal("myTexture.jpb"));
现在第二种方法效率更高,因为当你使用大量不同的纹理和精灵时,它确实可以节省大量的代码。但问题是,我不能找到一种方法来处理精灵在我不再需要它时使用的纹理,因为Sprite类没有实现Disposable接口,因此它确实&# 39; t有一个dispose()函数。
考虑到如果我选择第一种声明方式,我没有直接引用它,你能想到我可以处理纹理吗?
答案 0 :(得分:1)
Sprite
是TextureRegion
的子类,因此它有一个getTexture()
method来获取底层纹理对象。
Sprite API docs使这个非常迟钝(它刚刚在“从...继承的方法”一节中引用)。