无法将content1.png资源加载为非内容文件

时间:2013-12-24 12:18:04

标签: c# visual-studio-2010 monogame

尝试将图片导入我的“游戏”时,我收到错误消息。标题中显示的那个。它被称为content1.png,位于Content文件夹中。我有

public override void LoadContent()
{
    base.LoadContent();
    path = "Content/content1.png";
    splash1 = content.Load<Texture2D>(path);
}

并且它没有加载它 我不知道该怎么办。

3 个答案:

答案 0 :(得分:16)

似乎content.Load<Texture2D>方法尝试从文件系统中打开文件,并且它不是在那里建立的,请执行以下操作来解决它:

在Visual Studio中 - &gt;右键点击content1.png文件 - &gt;选择属性 - &gt;

  • 在属性窗口中将构建操作设置为"Content" content1.png

  • 复制到输出目录设置为 - &gt; Always

答案 1 :(得分:2)

虽然接受的解决方案对我不起作用,但我终于发现这是资产的相对路径造成了问题,所以改变了

Content.Load<Texture2D>("Graphics\\MyAsset.png")

Content.Load<Texture2D>("..\\Graphics\\MyAsset.png")

为我做了诀窍。

答案 2 :(得分:1)

MonoGame 3.5.1 中,您必须使用 MonoGame管道工具作为资源,并在内容文件夹中包含已构建的 *。mgcb 文件在项目中。参见示例项目Platformer2d。

  

MonoGame管道工具   http://www.monogame.net/2016/03/17/monogame-3-5/

     

样本https://github.com/MonoGame/MonoGame.Samples