Optimiser l'efficacité énergétique

Les jeux Android sont principalement joués sur des appareils fonctionnant sur batterie, tels que des téléphones ou des tablettes. Optimisez l'efficacité énergétique de votre jeu pour aider les utilisateurs à jouer plus longtemps et leur permettre de lancer une session de jeu même lorsque leur appareil n'est pas complètement chargé.

Utiliser une fréquence d'actualisation optimale

La fréquence d'actualisation de l'écran correspond à la vitesse à laquelle le panneau d'affichage d'un appareil peut changer pour afficher de nouvelles informations. Traditionnellement, les appareils portables utilisaient une fréquence d'actualisation de 60 Hz, qui actualisait le contenu de l'écran soixante fois par seconde. Les appareils modernes sont souvent équipés d'écrans avec des fréquences d'actualisation plus élevées, capables de s'actualiser à 90 Hz ou 120 Hz. Les fréquences d'actualisation plus élevées offrent une expérience utilisateur plus fluide pour des actions telles que le défilement, mais augmentent la consommation d'énergie du panneau d'affichage.

La fréquence d'images cible des jeux est généralement de 30 ou 60 images par seconde. Si la fréquence d'actualisation de l'écran est supérieure à la fréquence d'images cible du jeu, la fréquence d'actualisation plus élevée n'a aucun avantage, mais augmente la consommation d'énergie. Sur les appareils à fréquence d'actualisation élevée, ajustez la fréquence d'actualisation de l'écran pour qu'elle corresponde le plus possible à la fréquence d'images cible de votre jeu.

Intégrer ou activer la bibliothèque Swappy Frame Pacing

Android Game Development Kit (AGDK) inclut une bibliothèque de frame pacing appelée Swappy. Swappy optimise la fréquence d'actualisation de l'écran de l'appareil pour qu'elle corresponde le plus possible à la fréquence d'images de votre jeu. Si vous utilisez un moteur de jeu personnalisé, consultez le guide de la bibliothèque Frame Pacing pour découvrir comment l'intégrer à votre moteur.

Swappy est déjà intégré au moteur Unreal (Frame Pacing for Mobile Devices) et au moteur Unity (PlayerSettings.Android.optimizedFramePacing) et optimise la fréquence d'actualisation de l'écran si elle est activée dans votre projet de jeu.

Appeler l'API de fréquence d'images Android

Au lieu d'intégrer la bibliothèque Frame Pacing, utilisez l'API Android pour la fréquence d'images pour ajuster directement la fréquence d'actualisation de l'écran.

Utiliser l'API Vulkan pour les éléments graphiques

Android est compatible avec deux API graphiques: l'ancienne API OpenGL ES et la nouvelle API Vulkan. Vulkan est désormais la principale API graphique sur Android et est plus efficace qu'OpenGL ES. Pour en savoir plus sur les avantages de Vulkan et sur son utilisation, consultez la section Utiliser Vulkan pour les éléments graphiques.

Répondre aux conditions thermiques de l'appareil

Une utilisation élevée du processeur et du GPU de l'appareil génère de la chaleur. L'efficacité énergétique diminue à mesure que l'appareil chauffe. Si un appareil devient trop chaud, il réduit la vitesse du processeur et du GPU pour réduire la consommation d'énergie et permettre à l'appareil de refroidir. Ce comportement, appelé "throttling thermique", affecte les performances de votre jeu et son taux de décharge de la batterie. Utilisez l'API Android Thermal pour surveiller l'état thermique de l'appareil et ajuster la charge de travail de votre jeu afin d'éviter le throttling thermique.

Interroger le mode Jeu de l'appareil

Le mode Jeu permet à l'utilisateur de spécifier s'il préfère privilégier les performances ou l'autonomie de la batterie, ou s'il préfère sélectionner une valeur par défaut neutre. Si votre jeu est compatible avec les configurations de performances variables, utilisez l'API Game Mode pour vérifier cette préférence et modifier les paramètres de votre jeu en conséquence.

Ressources supplémentaires

Profileur d'alimentation Android Studio

Exemple de démonstration de l'efficacité énergétique d'Unity (GitHub)