我正在开发一个使用 XNA 框架进行 3D 渲染的应用程序。我现在想从文件加载纹理。到目前为止,我发现了两种方法:
Texture2D.FromStream(GraphicsDevice, Stream)
这种方法的问题是它只加载 gif、png 和 jpg,而且我还需要支持 tga 图像。- 创建一个
ContentManager
对象。这种方法的问题在于,似乎所有纹理都需要静态添加到项目中,来自文档:“在 ContentManager 加载资产之前,您需要将资产添加到游戏项目中”。有问题的程序是一个关卡编辑器,并且事先不知道需要哪些纹理。
有没有其他简单的方法来加载纹理,我正在考虑使用其他类来加载图像(虽然我不知道是哪个,我对 C# 不是很熟悉)然后也许使用该Texture2D.SetData
方法?
还有其他简单的方法可以实现我想要实现的目标吗?