问题标签 [content-pipeline]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
969 浏览

c# - Monogame 内容管道已停止工作

前几天我启动了我的单机游戏项目并启动它来进行快速游戏测试。它行不通。我收到了 2 个错误。

这是构建的输出。

但是从上次成功的构建中构建是有效的。

我没有改变任何东西。我做的任何新项目都会遇到同样的问题。

只有当我添加对我的内容项目的引用时才会出现问题。

(以这种方式引用项目:monogame-managing-content

我做了一个新项目,运行它,一切正常。创建了一个单声道游戏内容项目,运行它并且一切正常。然后我添加了参考并得到了错误。当我删除参考错误 2 消失但错误 1 ​​仍然存在,但项目将运行良好。

我试过重新安装xna和monogame。还尝试重新安装视觉工作室。我花了一整夜试图在网上找到答案,但一无所获。

我使用的是最新版本的 XNA 和 Monogame 3.2,我使用的是 windows 8.1。

0 投票
2 回答
258 浏览

c# - 单机游戏内容使用效率

我已经使用 Monogame 一段时间了,我只是想知道加载我的内容的最佳方式是什么?假设我有一个间隔系统不断在屏幕上创建对象,所以我应该在游戏类中加载对象的精灵并将精灵变量放入构造函数中,还是应该将内容变量放入对象构造函数中并从对象内?

顺便说一句,我的意思是我尽量保持帧速率并使用更少的内存,提前谢谢!

0 投票
1 回答
157 浏览

android - 在 Monogame 中无法在 Android 4.1.1 上加载图像

这个让我有点难过!我的项目中有 1 个纹理无法加载。我正在使用 Monogame 3.2 和 XNA 内容管道。当我在 Motorola Droid Razr (Android 4.1.1) 模拟器上运行我的游戏时,这个问题才开始发生。它在 Galaxy S4 (Android 4.4) 模拟器上运行良好。(这是我尝试过的仅有的两个版本)

有问题的图像: 无法加载的PNG

我收到通常的内容错误:

Microsoft.Xna.Framework.Content.ContentLoadException:无法将 Sprites\UI\InGame\winner01_black 资源加载为非内容文件!---> System.Exception:打开流错误。

游戏中的所有其他纹理加载都很好,所以我认为我对这个特殊的纹理做了一些愚蠢的事情,但是当我试图缩小它时,事情变得非常奇怪。

这是我尝试过的方法和结果:

1)用我知道有效的PNG覆盖损坏的PNG(以验证路径和东西是否有效),通过内容管道运行它,并将其加载到游戏中。作品

2) 从 Gimp/Paint.NET 中重新保存损坏的纹理(以防我有一些错误的设置或其他东西),通过内容管道运行它,然后在游戏中加载它BROKEN

3) 在 Gimp 中,将损坏的图像复制并粘贴到一个全新的文件中,保存该新文件,通过内容管道运行它,然后将其加载到游戏中。破碎的

4) 对损坏的图像进行了一些任意更改(在其上画线 - 见下图)重新保存,通过内容管道运行它,并将其加载到游戏中。作品

这个版本的纹理加载很好。

5) 然后我对损坏的图像进行了一些非常小的更改(添加一个红色像素),通过内容管道运行它,并将其加载到游戏中。破碎的

6) 将损坏的 PNG 重新保存为 TGA,通过内容管道运行它,然后将其加载到游戏中。破碎的

在这一点上,在我看来,内容管道必须对图像进行某种优化(有人建议它可能会将其变成颚化查找,因为颜色太少,并且可以解释为什么 #4 有效)。

我已将 PNG 的两个版本(以及由此产生的 XNB)放在这里,希望有人能告诉我是什么导致一个无法加载而另一个工作!

https://www.dropbox.com/sh/vqegeozqf6hv2uz/AACVoj6sEzFVW-PI6lgwdvzAa?dl=0

0 投票
1 回答
599 浏览

c# - MonoGame 模型处理器

有 MonoGame 相当于 XNA 的ModelProcessor吗?

我正在使用一个自定义AnimatorProcessor类,派生自,类似于“更好的皮肤示例”ModelProcessor中所做的:

我现在正在尝试将此代码移植到 MonoGame,但似乎(尽管 MonoGame 最近有了自己的管道)ModelProcessorMonoGame 管道项目中没有类。

我可以使用 XNA 管道,但问题是所有模型内容类都使用实际的 XNA 类/结构(向量、四元数),它们位于与 MonoGame 完全相同的命名空间中,从而在我的主项目中产生编译时冲突。这意味着我应该将这些类从一个程序集 (XNA) 映射到另一个程序集 (MonoGame),这是相当丑陋的

(更新)

我意识到 MonoGame 确实有一个ModelProcessor内部MonoGame.Framework.Content.Pipeline程序集,但是还有一个额外的MonoGame.ContentPipeline程序集(我不确定它是否已经过时,或者仍然必须在管​​道中使用)。

但是,如果我重建我AnimationProcessor以使用 MonoGame 的ModelProcessor,那么 Visual Studio 将无法使用它来导入/处理我的 fbx 文件。构建内容项目失败"Cannot find content processor 'AnimationProcessor'",并且它甚至没有作为 .fbx 文件的下拉框中的选项提供(可能是因为 Visual Studio 查找派生自 XNA 处理器的类,并且它不关心 MonoGame)。

有谁知道我应该如何使用自定义处理器导入 fbx 内容,并且仍然有 MonoGame 类而不是 XNA 的?

0 投票
0 回答
53 浏览

c# - VS 2013 Xact Audio Engine-File not found 异常

我正在尝试创建必须同时播放多个声音的 Windows 单游戏应用程序。当我发现一种解决方案是使用XACT时。然而,当涉及到音频引擎创建实例时,它会抛出File not found exception.

在此代码行:

如何去纠正这个错误?

0 投票
1 回答
257 浏览

xna - Mongame Content Pipeline:将带有嵌入纹理的 FBX 编译到 XNB

我有一个FBXwithembedded texture在里面。我可以在另一台计算机上查看FBX显示它的纹理。Autodesk FBX Review

当我尝试使用Monogame Content Pipeline工具 ( MGCP.exe) 编译它时XNB,出现如下错误:

纹理路径不存在

所以问题是MGCP工具是否支持将FBX嵌入式纹理编译成XNB?它会为此生成一个 XNB 文件吗?(请注意,它适用于具有外部纹理的 FBX,但它会为关联的纹理生成额外的 XNB 文件,这是我不想要的)

我是否需要编写自定义 FbxImporter 来执行此操作?

0 投票
1 回答
340 浏览

c# - MonoGame 管道 XML 加载错误“元素”是无效的 XmlNodeType

我正在尝试通过管道将 XML 文件加载到我的 MonoGame 游戏中,但出现错误。

“元素”是无效的 XmlNodeType。第 10 行,第 6 位。

我在一个外部可移植类库项目中为 XML 文件创建了我的类,并将该 DLL 添加到管道内容引用中。但是当我尝试在 MonoGame Pipeline 应用程序中构建 XML 文件时,我得到了上述错误。

有任何想法吗?

XML和类代码如下

MainMenu.xml(我已经用 xml 样式注释标记了错误行,注释不在实际文件中)

菜单.cs

背景.cs

选项.cs

按钮.cs

控制按钮.cs

0 投票
2 回答
2755 浏览

c# - 错误:找不到“freetype6.dll”

最近我在使用 MonoGame Content Pipeline 工具时遇到了一些问题,无法加载纹理。错误消息说找不到“freeimage.dll”。我查看了 MonoGame 论坛的解决方案,最终下载了 64 位版本的 Visual C++ Redistributable Package 2012。这解决了我的问题,内容管道可以再次加载 .png 文件。现在管道工具在加载 .spritefont 文件时遇到问题。它说它缺少“freetype.dll”。所有这些丢失的 .dll 文件是怎么回事?我刚刚下载了 VC++ Redistributable Package,但它只修复了纹理,而不是字体。


更新:

我尝试下载 Visual C++ Redistributable Package 2017。但是,问题仍然存在......