2011-10-21 54 views
3

我們正在使用MonoGame開發iOS和Windows Phone 7(以及最終Android)。iOS上的MonoGame和MonoTouch - 風景定位

我們的遊戲只在橫向上運行。

如果在Windows上的WP7模擬器運行時,我們的顯卡設備設置像這樣,在初始化()在我們的遊戲:

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

這不是WP7確切的屏幕尺寸(我們有一個黑色的現在右側的酒吧,這不是我們主要關心的問題),但是可以爲我們提供在iPhone上運行的正確屏幕尺寸。爲了在iPhone上正確查看所有內容,我們必須顛倒backbuffer的寬度和高度,這看起來很奇怪。

我們還發現我們必須在整個遊戲中反轉任何X/Y座標和寬度/高度。

這是一個很大的麻煩來處理。 MonoGame在這裏做什麼?

建議我們如何處理這兩個平臺之間的明顯調整大小?如果可能的話,我們想以某種方式在整個電路板上使用相同的座標。

編輯: 在GitHub上的最新的2.0版本的MonoGame不再有定位問題。

TouchPanel手勢尚未完全實現,所以我們只是避免這種情況。

+0

不知道MonoGame在做什麼,但替代方法[ExEn](http://andrewrussell.net/exen/)可以很好地處理這個問題。它完全支持iOS上的'SupportedOrientations'設置。它將處理所有的內部座標轉換(就像WP7)。 (完全披露:ExEn是我的圖書館。) –

+0

我打算通過您的電子郵件地址聯繫該鏈接,我對此有幾個疑問。 (MonoGame確實存在一些問題,使我們考慮付費選項) – jonathanpeppers

回答

4

您似乎正在使用codeplex上的舊版MonoGame源代碼,ExEn實際上是從中分離出來的並且與其進行商用。最新的OpenSource MonoGame源代碼和正確的主頁是https://github.com/mono/MonoGame

您可以嘗試從那裏的源代碼版本,並讓我知道如果這仍然是一個問題。我們正在爲MonoGame v1.6發佈準備,如果它仍然是一個問題,我想要修正它。

+0

我正在使用GitHub的源代碼。我只是鏈接到他們的codeplex頁面,B/C它解釋了項目更好一點。 – jonathanpeppers

+0

我有一個理論,我將在明天進行測試,我認爲如果您只在Info.plist中爲肖像設置應用,它可能會有效。我會測試一下,讓你知道我的結果。 – jonathanpeppers

+0

順便說一下,大部分MonoGame開發者都在irc.gnome.org或irc.gimp.org上的#MonoGame頻道上閒逛。即使Miguel De Icaza偶爾也會問我們如何做。 – Dominique