iOS上的MonoGame和MonoTouch - 横向定位

时间:2011-10-21 16:53:07

标签: c# ios xna xamarin.ios monogame

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

我们的游戏仅以横向方式运行。

如果在Windows上的WP7模拟器中运行,我们的图形设备设置如下,在我们游戏中的Initialize()中:

graphics = new GraphicsManager(this);
graphics.PreferredBackBufferWidth = 480;
graphics.PreferredBackBufferHeight = 320;
graphics.SupportedOrientations = DisplayOrientation.LandscapeLeft | DisplayOrientation.LandscapeRight;

这不是WP7的确切屏幕尺寸(我们现在右边有一个黑色条,这不是我们主要考虑的因素),但是我们可以在iPhone上运行正确的屏幕尺寸。为了在iPhone上正确显示所有内容,我们必须反转后备缓冲区的宽度和高度,这看起来很奇怪。

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

处理这个问题很麻烦。 MonoGame到底在做什么?

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

修改: GitHub上最新的2.0版MonoGame不再存在定位问题。

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

1 个答案:

答案 0 :(得分:4)

你似乎正在使用codeplex上的旧MonoGame源代码,ExEn实际上已经分拆出来并与之商业化。最新的OpenSource MonoGame源和正确的主页是https://github.com/mono/MonoGame

你可以从那里尝试源版本,如果这仍然是个问题,请告诉我。我们正准备推出MonoGame的v1.6版本,如果仍然存在问题,我想修复此问题。