Corona SDK Cross Device Résolution de l'écran
Cela va être l'une de ces questions gênantes à la recherche d'une réponse qui n'existe pas, mais voilà.
J'ai développé quelques jeux simples à l'aide de la Corona et tandis que la fonctionnalité semble fonctionner assez bien dans la plupart des dispositifs physiques, je l'ai testé sur, le principal problème est la mise en page. Je sais que vous ne pouvez pas vraiment construire pour chaque appareil parfaitement, mais je me demandais si il existe une méthode pour faire une application de bonne apparence à travers autant d'écrans que possible. J'ai accès à ces dispositifs
- iPad 1 & 2: 4:3 (1.33)
- iPhone 960 × 640 3:2 (1.5)
- iPhone 480x320 3:2 (1.5)
- Galaxy Nexus 16:9 (1.77)
De ce que j'ai vu, les gens cherchent à utiliser les 320x480 comme une résolution mise à l'échelle, puis laisser Corona haut de gamme à la bonne résolution du périphérique (@2x images que nécessaire) mais cela conduit à des bandes noires ou le recadrage en fonction de la config.lua réglage de l'échelle. Alors qu'il n'échelle correctement, avoir une boîte aux lettres n'est pas génial.
Donc je serais mieux de ne pas spécifier une largeur&hauteur dans le fichier de config, mais au lieu d'utiliser une sorte d'écran de vérifier, d'abord pour chercher 1.33 /1.5 /1.77 les ratios d'aspect? Sûrement avec le point de l'ensemble de la Corona SDK, il y aurait une sorte de "type d'installation" que les développeurs utilisent pour le début de tout nouveau projet?
Merci
source d'informationauteur Alex Holsgrove
Vous devez vous connecter pour publier un commentaire.
Il semble que j'ai trouvé une très bonne solution basée sur ce forum un post sur le Ansca site web: http://developer.anscamobile.com/forum/2012/03/12/understanding-letterbox-scalling
En résumé, le fichier de configuration.lua devrait ressembler à ceci:
Créer des images d'arrière-plan à 360*570 pour les appareils plus anciens. 320x480 écrans de recadrer l'image un peu et il va échelle bien pour les anciens appareils Android.
Créer des images d'arrière-plan à 1140*720 pour iPhone et iPad retina - encore de mise à l'échelle sur Android et être légèrement rognée sur iOS.
Comme un exemple, où vous avez l'habitude de créer un 320x480 de l'image et de l'afficher avec:
.. au lieu de créer un 360x570 arrière-plan et utiliser le code suivant:
C'est juste un résumé, afin de vérifier le lien pour de plus amples instructions.
Bien, vous POUVEZ utiliser un nombre légèrement de 2 pour la mise à l'échelle si vous voulez corriger les images pour les différents appareils. Ex:
Dans lequel "l'arrière-plan.png" serait un 640x960 image pour l'iphone4, tout en "background-iphone3.png" serait 320x480 (vous ne pas besoin de cela, mais il permettra de réduire les besoins en mémoire pour iphone3 applications). "background-ipad3.png" aurait besoin d'être 1 536 x 2 048 (et la moitié pour les -ipad2).
Bien sûr, il ne marche pas résoudre le ratio d'aspect de l'écran de positionnement, mais il résout pour tous les autres gfx problèmes connexes. N'oubliez pas d'utiliser l'affichage.newImageRect, pas d'affichage.newImage ou vous ne verrez pas la différence.