4

在 LibGdx SpriteBatch文档中。有人提到

SpriteBatch 是一个非常重的对象,因此您的程序中应该只拥有一个。

但我有点困惑!我想知道我是否必须在所有游戏中维护一个 SpriteBatch(作为单例)或者每个屏幕都有一个 SpriteBatch,如我目前发现的几个教程中所示。

我还想知道将 SpriteBatch 保持为单例是否是个好主意。

先感谢您。

4

1 回答 1

6

你可以在这里得到一些信息。

在我看来,你可以有 1 甚至 2 SpriteBatchs per Screen。如果您将另一个设置Screen为当前方法,则会调用该方法,并且您hide()可以简单地使用. 这意味着,您必须在方法中创建一个新的。 您可以将一个用于游戏,一个用于没有任何问题。但始终确保在调用另一个之前先调用一个,以便一次只有一个处于活动状态。 当然,如果您不需要多于一个,则不应使用多于一个。如果你愿意,你也可以为整个 gmae 准备一个。但请注意您可能用于不同屏幕的不同 es。dispose()SpriteBatch
show()
SpriteBatchHUD/UIend()begin()SpriteBatch
ProjectionMatrix

于 2014-04-02T09:58:03.700 回答