我正在开发一个基于瓷砖的 2d 游戏。我将事物拆分为诸如天空背景、陆地背景、城镇、UI 等组件,每个组件都处理其绘图。在调用任何绘图调用之前,我spritebatch.Begin()
使用默认值,以便我在 1 批次中绘制所有内容。
为了绘制土地质量,我在该区域反复绘制方形土地纹理,直到将其填满。然而,有一种spriteBatch
叫做的模式就是linear wrap
这样做的。不利的一面是,我将不得不通过将我的一个全局spritebatch.begin()
多次拆分为每个组件来更改我的设计。
所以我的问题是什么更好/更经济,手动平铺纹理或拆分子组件之间的begin()
和end()
?
还有其他问题可能需要我拆分一个spriteBatch.Begin()
,那么额外的 1 个有多重要spriteBatch.Begin()
?还是10多个?还是100多个?我想知道我应该以什么规模开始担心添加更多begins()
.