所以基本上我正在制作一个小型测试游戏,我有一个用于创建游戏中所有实体的类,所以我将类传递给对象Player并运行此代码:
protected override void LoadContent()
{
spriteBatch = new SpriteBatch(GraphicsDevice);
font = Content.Load<SpriteFont>("LCD");
Player.Sprite = Content.Load<Texture2D>("Sprites/Player");
}
但由于某种原因,每次我尝试调试并运行它时,它都会给我一个奇怪的错误,因为在错误没有显示之前它会正常运行,这就是错误所说的:
ContentLoadException未处理
无法将Sprites / Player资源加载为非内容文件!
我在内容文件夹中有一个名为&#34; Sprites&#34;的文件夹。正如它的名字所暗示的那样,拥有我的精灵,所有拼写都正确完成。我无法弄清楚为什么这个问题仍然存在。
答案 0 :(得分:1)
了解您如何添加资产,如何添加资产,以及项目结构以充分了解问题的根源,这对我很有帮助。
无论如何,我有一篇博文可能对解决这个问题有用,它是用Monogame 3.2编写的,如果我没记错的话,并解释了如何使用XNA和Monogame创建一个非常简单的2D游戏。
在本系列中,与您的案例相关的是以下块,说明如何将图像资源添加到您的游戏项目中。请记住,精灵图像的路径将与我的示例中的路径不同,因为您拥有&#34; Sprites&#34;子目录。
您需要右键单击解决方案中的
Content
文件夹 浏览器,选择Add Existing Item
选项,然后选择 图像。鉴于
Monogame
的工作方式与XNA
不同 管理内容管道,你将不得不改变 图像的属性,以便框架识别它。至 这样做,选择图像并导航到它的属性(F4 in Visual Studio,或右键单击 - &gt;属性)。更改它以便将图像复制到输出文件夹(如果是) 新。
您可以找到完整的博客文章here。
答案 1 :(得分:0)
检查字符串是否有错误。如果我是正确的,当我把一些不应该的东西用于资本化时,我会看到很多错误。
字符串:"Sprites/Player"
答案 2 :(得分:0)
我想出了问题,你看我根本没有让资源“复制”,它需要复制一次才能进入MonoGame项目文件夹,我知道Rookie错误但至少这会帮助其他人获得和我一样,感谢所有试图帮助解决这个问题的人,感谢您的时间。