将静态 Texture2D 与 SpriteBatch 一起使用可以提高性能吗?
本文关键字:高性能 Texture2D 静态 SpriteBatch 一起 | 更新日期: 2023-09-27 18:36:40
我的游戏中会有很多(看起来一样的)僵尸。
将纹理设置为静态,这样SpriteBatch
就不需要加载新纹理是个好主意吗?
我浏览了整个僵尸列表,并用相同的调用绘制每个僵尸,只是改变了位置。SpriteBatch
会得到它吗?每次都是完全相同的质地吗?缺点可能在哪里?
我不认为使用static
会给你带来某种好处.
可以肯定的是,如果您只加载一次Texture2D
,则可以节省内存,并且可以使用相同的变量绘制需要多少次。
无论如何,如果您只使用一种纹理,则没有任何问题,因为:
ContentManager 的每个实例将仅加载任何给定的资源一次。第二次请求资源时,它将返回相同的资源它上次返回的实例。
ContentManager 维护它已加载的所有内容的列表内部。此列表可防止垃圾回收器清理这些资源。
参考这里。