【发布时间】:2009-12-01 03:55:32
【问题描述】:
我正在加载一个包含多个精灵纹理的 Texture2D。当我加载初始纹理以存储到单独的 Texture2D 对象中时,我想拉出单个纹理,但似乎找不到任何可以让我这样做的方法。 SpriteBatch.Draw 我认为应该只在开始、结束块中调用,对吧?
谢谢。
【问题讨论】:
-
你对最后一部分是正确的。 Draw 必须在 begin 和 end 之间调用。
标签: xna
我正在加载一个包含多个精灵纹理的 Texture2D。当我加载初始纹理以存储到单独的 Texture2D 对象中时,我想拉出单个纹理,但似乎找不到任何可以让我这样做的方法。 SpriteBatch.Draw 我认为应该只在开始、结束块中调用,对吧?
谢谢。
【问题讨论】:
标签: xna
我正在加载一个 Texture2D,其中包含 多个精灵纹理。我想 拉出单个纹理 当我将初始纹理加载到 存储到单独的 Texture2D 对象中。
您不必这样做,也不应该这样做。访问单个纹理比访问多个纹理更快。此外,纹理存储在 GPU 纹理内存中。把它分开是没有意义的。
您应该专注于编写可以访问精灵表中各个精灵的代码。我建议你看看基于精灵的游戏是如何工作的。
这是一个很棒的教程视频系列,应该可以帮助你:tile engine videos
【讨论】: