如何将用户生成的 png 图像加载为纹理(而不是 xnb)?



这个想法是让用户创建自己的纹理,将它们作为图像放在一个文件夹中(并可能在单独的文本文件中设置一些属性),以便游戏加载并相应地工作。

通常我有自己的纹理作为图像,它们在编译时由Visual Studio处理,然后游戏使用XNB文件。但是,没有安装 VS 的最终用户呢?

UPD:唯一安全的选择(不需要手动资源处置)似乎是替换 XNB 格式的原始资源文件。为此,您可以使用this tool from codeplex处理自己的PNG,WAV和其他文件,并将它们放入游戏的内容文件夹中。

如果你只在Windows中工作...(不是Xbox,也不是Windows Phone)

您可以使用 Texture2d.FromStream(File.OpenRead(path));

您必须意识到,这样,当不需要纹理来释放资源时,您应该调用纹理释放方法。

Wehn 你使用的内容管理器,是在游戏结束时调用该方法的管理器。

最新更新