【问题标题】:How to dispose Libgdx Texture via Sprite object如何通过 Sprite 对象处理 Libgdx 纹理
【发布时间】:2015-03-07 20:42:10
【问题描述】:

在 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 接口,因此它没有 dispose () 函数。

鉴于我没有像选择第一种声明方式那样直接引用纹理,你能想出什么方法来处理纹理吗?

【问题讨论】:

    标签: java libgdx


    【解决方案1】:

    SpriteTextureRegion 的子类,因此它有一个getTexture() method 来获取底层纹理对象。

    Sprite API docs 使这个变得相当迟钝(它只是在“继承自 .. 的方法”部分中引用)。

    【讨论】:

    • 找到答案后记得标记答案。
    • @exophrenik,很高兴为您提供帮助!您可以通过单击左侧的复选标记轮廓(在左侧的计票下方)来接受答案。像这样将问题标记为“已回答”,可以让人们更容易找到有用的答案,让人们更容易找到仍然需要更多/更好答案的问题。见stackoverflow.com/help/accepted-answer。谢谢!
    猜你喜欢
    • 2015-12-02
    • 1970-01-01
    • 2014-09-15
    • 1970-01-01
    • 2022-07-04
    • 2017-09-30
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多