Grands écrans et écrans externes

L'un des avantages les plus évidents des appareils ChromeOS est leur grand écran magnifique et la facilité avec laquelle vous pouvez utiliser des moniteurs externes. Cette grande surface d'écran offre un grand potentiel pour les jeux, mais l'utiliser correctement peut nécessiter une réflexion et une conception supplémentaires.

Orientation et modifications de configuration

Certaines applications mobiles sont spécifiquement conçues pour les petits téléphones et sont verrouillées en mode Portrait. Cela offre des avantages apparemment rapides en réduisant le nombre de modifications de configuration que le jeu est susceptible de recevoir et en réduisant le nombre de mises en page différentes nécessaires. Toutefois, ce choix peut réserver quelques surprises. En effet, en choisissant de ne pas gérer les changements d'orientation, de nombreuses applications ne seront pas préparées à d'autres changements de configuration tels que le redimensionnement de la fenêtre, la connexion d'un clavier, les écrans externes, etc. Cela peut entraîner des plantages et des redémarrages inattendus. Pour en savoir plus, consultez Changements d'exécution. Bien que ces changements se produisent également sur les téléphones, ils sont fréquents sur les appareils pliables et ChromeOS, et doivent être gérés correctement.

De plus, sur les appareils à grand écran avec des écrans au format paysage ou les appareils pliables avec des formats plus carrés, les jeux avec une orientation portrait fixe s'afficheront avec de grandes bandes noires sur les côtés.

D'autres jeux conçus d'abord pour mobile peuvent choisir de verrouiller leurs applications en mode paysage. Les utilisateurs de tablettes ou d'appareils convertibles seront obligés de tenir l'appareil en mode paysage, ce qui peut sembler plus agressif que sur un téléphone et dégrader l'expérience de votre jeu. Pour les tablettes et les ordinateurs portables convertibles à grand écran, il est possible que le jeu dispose de suffisamment d'espace en mode Portrait. Pour certaines personnes, il peut être plus confortable de tenir l'appareil dans cette orientation, ce qui leur permet d'interagir avec votre jeu pendant de plus longues périodes.

Selon la portée et la maturité de vos jeux, il existe différentes façons de résoudre ce problème. Dans l'idéal, votre jeu devrait s'adapter de manière dynamique aux différentes tailles d'écran, offrant ainsi une expérience immersive et améliorée aux utilisateurs disposant d'écrans plus grands. Une autre approche consiste à trouver des moyens créatifs de remplir l'espace noir vide avec des informations utiles telles que des statistiques, des cartes ou des fenêtres de chat, ou encore à inclure des images liées au jeu en arrière-plan à la place du noir, ce qui permet de mieux encadrer le gameplay principal.

Dans la mesure du possible, autorisez vos utilisateurs à utiliser votre application dans les deux orientations, lorsque la taille de l'écran le permet.

Exemple 1

(À gauche) Exemple de jeu de réflexion avec des bandes noires sur un écran en mode Paysage. (À droite) Le même jeu de puzzle, mais avec une image en arrière-plan pour remplacer les barres noires.

Un jeu de réflexion est un jeu Android mature conçu pour les téléphones en mode portrait. Sur les grands écrans en mode paysage, il s'exécute avec des barres noires sur les côtés. Étant donné que le jeu disposait d'une base d'utilisateurs importante et active, et que le développeur se concentre sur son prochain titre, il a choisi d'ajouter une image floue à l'arrière-plan de chaque niveau et menu afin d'encadrer le jeu, sans avoir à réécrire l'UI. Étant donné qu'ils sont en cours de développement pour le prochain jeu, le développeur inclut la prise en charge du mode paysage dans le nouveau titre.

Exemple 2

(À gauche) Un jeu de course automobile optimisant l'espace de l'écran en mode Paysage. (À droite) Le même jeu de course automobile optimisé pour le mode Portrait sur grand écran.

Un jeu de course automobile conçu pour mobile est bloqué en mode Paysage afin d'optimiser l'espace disponible sur l'écran des téléphones. Ces derniers temps, les utilisateurs de tablettes et de ChromeOS se sont plaints de la difficulté à jouer et ont demandé la prise en charge du mode Portrait. Le développeur inclut une vérification de la taille de l'écran dans son code. Si l'écran est suffisamment grand, le mode Portrait est autorisé. Pour conserver la vue grand-angle requise pour le jeu, le contenu est placé au centre de l'écran. Une barre d'interface utilisateur supplémentaire pour l'autoradio s'affiche en bas de l'écran, ce qui permet aux utilisateurs de changer facilement de station de radio. Les statistiques de carte et de course sont déplacées en haut de l'écran, ce qui libère la vue du pare-brise et améliore le gameplay.

Consultez également les Consignes pour les grands écrans Android et la Documentation sur les tailles d'écran Android.

Fonctionnalité multifenêtre

Les jeux offrent souvent aux utilisateurs une expérience immersive en plein écran. Toutefois, certains utilisateurs sur ordinateur ou appareil pliable aiment avoir des services de chat, de musique ou de streaming vidéo ouverts et visibles en même temps dans une fenêtre distincte. S'ils enregistrent ou partagent leur propre écran, il peut également être utile d'ouvrir et de rendre visibles des fenêtres supplémentaires.

La fonctionnalité multifenêtre est le comportement par défaut des applications et des jeux Android. Elle s'applique aux ordinateurs ChromeOS, ainsi qu'aux téléphones et tablettes en mode écran partagé. Si vous souhaitez empêcher le redimensionnement de votre jeu, déclarez qu'il n'est pas redimensionnable dans AndroidManifest.xml.

android:resizeableActivity="false"

Si votre jeu est redimensionnable, voici quelques points importants à prendre en compte :

En savoir plus sur la gestion des fenêtres

Mode plein écran

Lorsque votre jeu s'exécute en mode plein écran, vous pouvez le passer en mode immersif pour supprimer les bordures de fenêtre et les autres éléments distrayants de l'écran. Pour en savoir plus, consultez la documentation Android sur le mode plein écran.

private fun hideSystemUI() {
    // Enables regular immersive mode.
    window.decorView.systemUiVisibility = (
            View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
            or View.SYSTEM_UI_FLAG_LAYOUT_STABLE
            or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
            or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
            or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
            or View.SYSTEM_UI_FLAG_FULLSCREEN)
}