2011-10-21 3 views
3

Nous utilisons MonoGame pour développer pour iOS et Windows Phone 7 (et éventuellement Android).MonoGame et MonoTouch sur iOS - Orientation Paysage

Notre jeu fonctionne uniquement en orientation paysage.

Si en cours d'exécution dans l'émulateur WP7 sur les fenêtres, nos graphiques configuration de l'appareil comme si, dans initialize() dans notre jeu:

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

Ce n'est pas la taille de l'écran exact pour WP7 (nous avons un noir barre sur la droite pour l'instant, ce qui n'est pas notre principale préoccupation), mais nous donne la bonne taille d'écran qui fonctionnera sur un iPhone. Pour que tout se passe bien sur l'iPhone, il faut inverser la largeur et la hauteur du backbuffer, ce qui semble très étrange.

Nous constatons également que nous devons inverser toutes les coordonnées X/Y et largeurs/hauteurs tout au long de notre jeu.

Il s'agit de beaucoup de problèmes à régler. Que fait exactement MonoGame ici?

Quelle est la recommandation pour nous de gérer le redimensionnement apparent entre ces deux plateformes? Nous aimerions utiliser les mêmes coordonnées dans tous les cas si possible.

EDIT: La dernière version 2.0 de MonoGame sur GitHub ne présente plus les problèmes d'orientation.

Les gestes TouchPanel ne sont pas encore implémentés, donc nous évitons cela.

+0

Aucune idée de ce que fait MonoGame, mais l'alternative, [ExEn] (http://andrewrussell.net/exen/), gère cela très bien. Il prend entièrement en charge le paramètre 'SupportedOrientations' sur iOS. Il va gérer toutes les conversions de coordonnées en interne (tout comme WP7). (Divulgation complète: ExEn est ma bibliothèque.) –

+0

Je vais contacter à votre adresse e-mail sur ce lien, j'ai quelques questions à ce sujet. (Il y a certainement quelques problèmes avec MonoGame qui nous fait considérer comme une option payante) – jonathanpeppers

Répondre

4

Il semble que vous utilisiez les anciennes sources MonoGame sur le codeplex, que l'ExEn a en fait bifurqué et commercialisé. La dernière source OpenSource MonoGame et la page d'accueil appropriée est https://github.com/mono/MonoGame.

Pourriez-vous s'il vous plaît essayer la version source à partir de là, et laissez-moi savoir si c'est toujours un problème. Nous nous préparons pour la version 1.6 de MonoGame et j'aimerais que ce soit corrigé, si c'est toujours un problème.

+0

J'utilise la source de GitHub. Je viens de me connecter à leur page codeplex, b/c ça explique un peu mieux le projet. – jonathanpeppers

+0

J'ai une théorie que je vais tester demain, je pense que cela peut fonctionner si vous configurez votre application pour Portrait uniquement dans Info.plist. Je vais tester cela et vous faire connaître mes résultats. – jonathanpeppers

+0

Btw, la plupart des développeurs de MonoGame traînent sur le canal #MonoGame sur irc.gnome.org ou irc.gimp.org. Même Miguel De Icaza intervient occasionnellement pour demander comment nous allons. – Dominique