我正在尝试将png图像加载到我的游戏中,但由于某种原因它无法找到图像。
这是我试图加载图片的标题屏幕:
public TitleScreen(ContentManager contentManager)
{
titleScreen = contentManager.Load<Texture2D>("gfx\\titleScreen");
bgScreen = contentManager.Load<Texture2D>("gfx\\bgScreen");
arialFont = contentManager.Load<SpriteFont>("Arial");
}
我在这里设置内容的根目录:
Content.RootDirectory = "Content";
当我的程序点击屏幕时,它无法找到图像,但是它的路径是正确的,图像也被设置为内容并复制到输出目录。
当我尝试调试它时,它告诉我它找不到图像“Content \ gfx \ titleScreen.xnb”。出于某种原因,它试图加载一个xnb文件,我可以在任何地方更改它,还是我还需要做其他事情?
答案 0 :(得分:5)
在XNA中,图像是编译的.xnb文件,而不是.png或.jpg
XNA 3.0 || XNA 3.1
您将内容添加到项目中的“内容”文件夹
XNA 4.0
您有一个内容项目,并在当前项目中添加内容参考
另外,请确保设置图像的属性: 右键单击内容项 - &gt;属性 - &gt;设置以下
答案 1 :(得分:5)
另外请记住在向内容项目添加新资源后重建解决方案。
答案 2 :(得分:2)
在XNA中,您通常会加载已处理的文件(xnb
文件)。您将向您的解决方案添加一个内容项目,并在您的主游戏项目中引用该项目(通常这是在您创建新游戏时设置的)。
您在那里添加文件(资产)。构建游戏时,将构建内容项目,该项目处理您的资产,生成xnb
文件,这是ContentManager.Load
方法所需的内容。