问题标签 [monogame]

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 投票
7 回答
726 浏览

windows-7 - 跨平台 3D (C#)

我正在开发一款应该在尽可能多的平台上运行的游戏,我想知道是否有任何好的 3D 库可以在 Windows Phone 7 和 Mono(Windows 和 Linux)上运行。我会使用 OpenTK,但这取决于 OpenGL,而且 Windows Phone 只支持托管 DirectX (XNA)。那里至少有任何像样的包装纸吗?

0 投票
2 回答
349 浏览

c# - MonoDevelop 和/或 MonoTouch 错误?

当尝试编译一些之前编译良好且没有错误的代码时,我开始收到关于命名空间中不存在的类的错误。

我知道这是在编译之前很好并且我没有修改它,我使用的 Mac 刚刚进入睡眠状态,我再次唤醒它并发现这个错误发生了。

错误如下:

'名称空间'Microsoft.Xna.Framework.Content'中不存在类型或名称空间'ContentManager'。您是否缺少程序集参考?

在 mac 进入睡眠状态之前,这段代码运行良好,所以我想知道这是否是两者之间的联系。我已经检查过,并且我 100% 确定 ContentManager 实际上确实存在于 Microsoft.Xna.Framework.Content 中,甚至 MonoDevelop 也能够将我带到它的声明中,所以我确定它不是被破坏的代码。

我尝试将项目(MonoGame.Framework.iOS)卸载/重新加载到解决方案中,但这没有帮助,还尝试将 pidb 文件删除到它,仍然没有结果。

这实际上是第二次发生这种情况,我想上次我只是删除了项目并重新开始,但这次我真的不想这样做。

那么关于修复这个错误的任何想法?

0 投票
0 回答
405 浏览

ios - MonoDevelop - 针对 iPhone 模拟器 4.2 而不是 4.3

我正在使用 MonoDevelop 将它运行到 MonoTouch + MonoGame 示例,但我遇到了 LLVM 错误。我也使用 XCode 4+ 遇到了这个问题,并通过将部署目标从 4.3 切换到 4.2 来解决这个问题......这可以在 MonoDevelop 中完成吗?如何?

TIA

0 投票
3 回答
2122 浏览

c# - XNA Texture2D 缓存

这样的课程有必要吗?

我很好奇ContentManager.Load<Texture2D>()它是否在内部有自己的缓存。我不想双重缓存东西。

笔记:

我们的 XNA 游戏是 2D 的,可以在 WP7 和 Windows 以及 iOS 和 OSX 上使用MonoGame 运行

MonoGame在 Windows 中的功能可能与 XNA 不同,但我可能可以浏览它的源代码来找出答案。

0 投票
1 回答
2631 浏览

c# - iOS 上的 MonoGame 和 MonoTouch - 横向

我们正在使用MonoGame为 iOS 和 Windows Phone 7(然后最终是 Android)进行开发。

我们的游戏只能横向运行。

如果在 windows 上的 WP7 模拟器中运行,我们的图形设备设置就像这样,在我们游戏的 Initialize() 中:

这不是 WP7 的确切屏幕尺寸(我们现在在右侧有一个黑条,这不是我们主要关心的问题),但为我们提供了可以在 iPhone 上运行的正确屏幕尺寸。为了让 iPhone 上的所有内容都能正确显示,我们必须颠倒 backbuffer 的 Width 和 Height,这看起来很奇怪。

我们还发现我们必须在整个游戏中反转任何 X/Y 坐标和宽度/高度。

这很麻烦。MonoGame 到底在做什么?

对我们处理这两个平台之间的明显调整大小的建议是什么?如果可能的话,我们希望以某种方式使用相同的坐标。

编辑: GitHub 上最新的 2.0 版本的 MonoGame 不再有方向问题。

TouchPanel 手势还没有完全实现,所以我们只是避免这样做。

0 投票
1 回答
1740 浏览

c# - MonoGame - 在 iOS 上使用 SpriteBatch 平铺 Texture2D

现在,我正在用 2 个 for 循环平铺 Texture2D,类似于MonoGame 示例中的示例

我正在阅读,我看到使用两个纹理(宽度和高度上的 2、4、8、16、32 等)的力量可以通过一个 SpriteBatch.Draw 调用来平铺。

iOS 上的 MonoGame 是否支持此功能?

我给了它几次尝试,无论如何它只是拉伸图像而不是平铺它。

我在我的 SpriteBatch.Begin() 上使用 SamplerState.LinearWrap,并尝试使用 2048x128 png 并在 512x32 上尝试了 1/4 大小,但没有运气。(使用大尺寸,b/c 我们的游戏以 2400x 运行,有些东西缩小了,b/c 你可以用相机放大 2.5 倍)

0 投票
1 回答
1079 浏览

c# - XNA (MonoGame) 世界空间和物体运动

我刚开始在 XNA 中进行 3D 编码,并试图了解一些事情。

我在 XNA 的目标是制作一个太空模拟游戏(我知道是原创的)我能够绘制模型并且我的相机可以按照我的意愿工作,我遇到的麻烦是了解如何移动我的敌人船舶。我对 2d 中的转向行为做了一些有价值的事情,但不是 3d。

我的问题是:

如果我试图将船只移动到“寻找”一个位置,这种移动如何影响船只的世界矩阵(如果有的话)?我正在使用vector3s,并将加速度添加到速度,然后将速度添加到位置。这是正确的方法吗?

我现在不必发帖,否则我会发帖,我只是想了解采取什么方法。

谢谢

0 投票
1 回答
1099 浏览

iphone - 更改 Farseer 物理引擎设置以提高性能

我已经成功地使用Farseer使用XNA开发了我的一款游戏。游戏在 Windows 和 WP7 中运行就像一个魅力。我目前正在使用MonotouchMonogame将我的游戏移植到IOS中。我已经成功地编译和使用了 Farseer,并在我的游戏的第一个版本中移植到 Monotouch 和 Monogame。除了表演,一切都很好。游戏在 iPhone 设备上运行速度要慢得多。我做了一些代码调查,似乎主要瓶颈是 Farseer。当它必须管理超过 5-6 个带有单个夹具(圆圈)的物体时,它变得非常慢。

阅读文档时,我注意到要调整 Farseer,我可以更改 Setting 静态类的值:

表现

为了充分利用引擎,您应该尝试遵循以下指南:

启用睡眠 睡眠使您可以在世界上拥有大量的身体。它还可以增加发动机的稳定性,因为一堆物体中的小运动不会在堆栈中传播。睡眠体的开销很小,因此建议启用它。

禁用 CCD 连续碰撞检测可防止隧道效应,但会以性能为代价。如果隧道没有问题,则应该一起禁用 CCD。

最小化位置和速度迭代次数 大量迭代使引擎更稳定,但以性能为代价。您应该调整这些值以适合您的游戏。

坏消息是,如果我更改该类的任何值,似乎什么都不会发生。我试图改变值如下:

我也尝试使用较低的值,例如 VelocityIterations = 1 但似乎没有任何改变......

有人已经更改了设置类值以提高性能吗?

0 投票
2 回答
521 浏览

c# - iOS 上的 Monogame:与 Windows Phone 相比,解释触摸时的不同行为?

只是为了做一些测试,我在 Windows 7、Windows Phone 7 和 iPhone(使用 Monogame)上执行了 Microsoft 的 XNA 示例“Shooter”。

除了 Monogame 以纵向而不是横向运行游戏这一事实之外,我注意到玩家精灵的运动表现确实不同。

在 Phone 7 上,您点击任意位置,将手指放在屏幕上,在移动它时,精灵会跟随相对于手指的移动。

然而,在 iPhone 上,精灵首先完全不动,然后移动得非常快并向上移动到屏幕边界。这使得玩家无法控制。

使用的代码是:

对于 iOS,这是否必须有所不同?

0 投票
5 回答
21527 浏览

mono - MonoGame可靠吗?

我正在寻找一个跨平台的游戏开发框架。MonoGame看起来很容易学习和快速开发,但我看到他们页面上的大多数游戏都不起作用,或者有很多错误。

谁能解释一下 MonoGame 对于 ios/droid 专业手机游戏开发是否可靠?