Comportement d’un appareil portable sur une station d’accueil
Certains appareils portables sont utilisés sur une station d’accueil. Bien qu’il n’existe pas d’API permettant de vérifier si l’appareil portable est sur une station d’accueil, un appareil connecté à une station d’accueil peut avoir un écran externe connecté. Vous pouvez vérifier la présence d’un écran externe à l’aide des API EnumDisplayDevices et EnumDisplaySettings. Lorsqu’un appareil portable est sur une station d’accueil, utilisez ces méthodes pour vérifier la présence d’écrans externes connectés :- Vérifiez la présence de manettes supplémentaires. La manette intégrée de l’appareil portable est toujours disponible, mais l’utilisateur peut également connecter des manettes supplémentaires.
- Vérifiez la taille des écrans connectés.
- Les recommandations relatives au clavier virtuel restent valables, car la manette demeure le principal mécanisme d’entrée.
- Certains joueurs peuvent connecter une souris et un clavier, comme ils le font sur les consoles.
Entrées garanties
Bien que différents appareils de jeu portables puissent proposer des options d’entrée supplémentaires, les appareils portables disposent des entrées suivantes.- Boutons A, B, X et Y
- Bouton supérieur gauche et bouton supérieur droit
- Gâchette gauche et gâchette droite
- Stick analogique gauche et stick analogique droit
- Croix directionnelle
- Bouton Menu
- Bouton Affichage
Alimentation
Pour vérifier si l’appareil portable est alimenté sur secteur plutôt que sur batterie, appelez la fonction GetSystemPowerStatus. Elle indique si l’appareil est alimenté sur secteur et fournit un résumé de l’état de charge de la batterie (élevé, faible, critique ou en charge). Tenez compte de l’impact de votre jeu sur l’autonomie de la batterie de l’appareil, car la consommation d’énergie de votre jeu n’est pas toujours évidente. Les recommandations d’économie d’énergie du XBOX Sustainability Toolkit peuvent également s’appliquer aux appareils portables. Maximisez les économies d’énergie en :- Activant la VSync pour donner plus de temps d’inactivité au GPU et réduire la consommation d’énergie.
- Réduisant la résolution de rendu interne et en appliquant une passe de mise à l’échelle.
- Réduisant la fréquence d’images pour économiser de l’énergie. Remarque : une fréquence d’images plus faible peut affecter le gameplay.
- Arrêtant le rendu du monde lorsque des menus ou des éléments d’interface utilisateur en plein écran apparaissent, ou lorsque le jeu est en pause.
- Mettant le jeu en pause lorsqu’une inactivité des entrées est détectée et que le joueur est inactif.
Dimensions de l’écran
Bien que les différents appareils de jeu portables aient des résolutions d’écran variées, vous pouvez vous appuyer sur les normes suivantes :- La taille diagonale de l’écran est d’au moins 7 pouces (17,8 cm).
- L’écran a un rapport d’aspect de 16:9 ou 16:10.
Exemples de bonnes pratiques pour l’expérience sur appareil portable
Pour vous aider à concevoir et optimiser votre jeu pour les appareils portables, Microsoft a publié deux exemples : un exemple C++ natif et un exemple C# managé pour Unity. Tous deux proposent un ensemble similaire de bonnes pratiques sur l’utilisation des API pour gérer l’expérience de votre jeu sur appareil portable.- Déterminer si un appareil est un appareil portable.
- Déterminer si un appareil fonctionne sur batterie, est en charge ou utilise une alimentation externe.
- Rechercher les propriétés propres à l’appareil, y compris les propriétés de l’écran intégré.
- Gérer les changements de DPI et mettre à l’échelle l’interface utilisateur en conséquence.
- Utiliser des claviers virtuels pour la saisie de texte.
- Rechercher les périphériques réseau et leurs types.
- Déterminer la connectivité réseau et Bluetooth®.
- Gérer les entrées de la manette, du clavier et de la souris.
- Déterminer la modalité d’entrée. Par exemple, identifier le périphérique d’entrée utilisé le plus récemment.
- Exemple C++ natif : Exemple C++ sur GitHub.
- Exemple C# managé pour Unity : Exemple C# managé pour Unity sur GitHub.
