我已经看到了许多有关如何从Spritesheet渲染Sprite的示例,但我还没有理解为什么它是2D游戏中处理Sprite的最常见方法。
我在一些演示应用程序中以2d精灵渲染开始,通过将任何给定的精灵类型的每个动画帧作为其自己的纹理进行处理,并将纹理集合存储在字典中。这似乎很适合我,并且非常适合我的工作流程,因为我倾向于将动画制作为gif / mng文件,然后将帧提取到各个png中。
从单张纸而不是从单独的纹理进行渲染是否具有明显的性能优势?借助能够每秒在屏幕上将数百万个多边形绘制到屏幕上的现代硬件,这对于我的仅处理几十个50x100px矩形的2d游戏来说,是否也很重要?
将纹理加载到图形内存中并在XNA中显示的实现细节似乎很抽象。我所知道的是,纹理在加载时已绑定到图形设备,然后在游戏循环中,纹理将成批渲染。因此,我不清楚我的选择是否会影响性能。
我怀疑大多数2d游戏开发人员似乎有一些很好的理由在使用它们,我只是不明白为什么。