在 LibGdx SpriteBatch文档中。有人提到
SpriteBatch 是一个非常重的对象,因此您的程序中应该只拥有一个。
但我有点困惑!我想知道我是否必须在所有游戏中维护一个 SpriteBatch(作为单例)或者每个屏幕都有一个 SpriteBatch,如我目前发现的几个教程中所示。
我还想知道将 SpriteBatch 保持为单例是否是个好主意。
先感谢您。
在 LibGdx SpriteBatch文档中。有人提到
SpriteBatch 是一个非常重的对象,因此您的程序中应该只拥有一个。
但我有点困惑!我想知道我是否必须在所有游戏中维护一个 SpriteBatch(作为单例)或者每个屏幕都有一个 SpriteBatch,如我目前发现的几个教程中所示。
我还想知道将 SpriteBatch 保持为单例是否是个好主意。
先感谢您。
你可以在这里得到一些信息。
在我看来,你可以有 1 甚至 2 SpriteBatch
s per Screen
。如果您将另一个设置Screen
为当前方法,则会调用该方法,并且您hide()
可以简单地使用.
这意味着,您必须在方法中创建一个新的。
您可以将一个用于游戏,一个用于没有任何问题。但始终确保在调用另一个之前先调用一个,以便一次只有一个处于活动状态。
当然,如果您不需要多于一个,则不应使用多于一个。如果你愿意,你也可以为整个 gmae 准备一个。但请注意您可能用于不同屏幕的不同 es。dispose()
SpriteBatch
show()
SpriteBatch
HUD/UI
end()
begin()
SpriteBatch
ProjectionMatrix