【问题标题】:Monogame: Assets not being loaded after changing the propertiesMonogame:更改属性后未加载资产
【发布时间】:2017-06-23 03:06:26
【问题描述】:

我正在使用 VS2015 和 monogame

在任何事情之前,我已经搜索了我的问题,并且我已经按照这些答案告诉我的步骤进行操作。我已将 .xnb 文件的构建操作更改为“内容”,并将复制到输出目录更改为“如果较新则复制”。

不幸的是,我仍然收到“无法将 Content\Graphics\burger 资产加载为非内容文件!”的错误消息。同时突出显示以下行:

  sprite = contentManager.Load<Texture2D>(spriteName);

无法将 Content\Graphics\burger 资产加载为非内容文件!这是我检查详细信息时得到的结果

【问题讨论】:

    标签: c# monogame


    【解决方案1】:

    这是一个非常普遍的问题,缺少一些细节,所以我会给你很多解决方案。

    如果您使用的是MonoGame自带的MGCB程序,您只需将原始的.png或.jpg文件放在目录中,让MGCB为您转换成.xnb即可。

    如果您没有原始文件,或者您必须使用 .xnb,只需将构建操作设置为不执行任何操作并复制如果更新。由于它已经是一个 .xnb 文件,因此您无需对其执行任何操作。

    您也可能有错误的文件路径。我不知道 spriteName 是什么,但应该是:

    sprite = contentManager.Load<Texture2D>("Graphics/burger");
    

    希望这会有所帮助。让我知道它是否有效。

    【讨论】:

    • 我已经将文件转换为 .xnb 格式。这行出现在 burger 方法的 cs 文件中,这就是 spriteName 存在的原因。我的精灵资源已经是 .xnb 文件了。
    【解决方案2】:

    我找到了答案。显然,或者至少对于我收到的这个特定代码,将内容直接添加到 monogame 内容管道(存在于您的 slm 文件中)并构建它,而不是添加转换后的 . xnb 文件在monogame 上单独构建后在外部进行。我希望我知道为什么会发生这种情况,因为以前在外部加载 xnb 文件工作得很好,但这就是我获得所需输出的方式。不过感谢您的帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 2020-07-06
      • 2020-01-21
      • 2016-12-16
      • 2017-07-17
      • 1970-01-01
      相关资源
      最近更新 更多