Ottimizza l'efficienza energetica

I giochi per Android vengono giocati principalmente su dispositivi alimentati a batteria, come telefoni o tablet. Ottimizza l'efficienza energetica del tuo gioco per aiutare gli utenti a giocare più a lungo e a iniziare una sessione di gioco anche quando il loro dispositivo non è completamente carico.

Utilizza una frequenza di aggiornamento del display ottimale

La frequenza di aggiornamento del display è la velocità con cui il pannello del display di un dispositivo può cambiare per mostrare nuove informazioni. Tradizionalmente, i dispositivi portatili utilizzavano una frequenza di aggiornamento di 60 Hz, aggiornando i contenuti del display 60 volte al secondo. I dispositivi moderni spesso dispongono di display con frequenze di aggiornamento più elevate, in grado di aggiornarsi a 90 o 120 Hz. Frequenze di aggiornamento più elevate si traducono in esperienze utente più fluide per azioni come lo scorrimento, ma aumentano il consumo energetico del pannello del display.

I giochi hanno in genere una frequenza fotogrammi target di 30 o 60 fotogrammi al secondo. Se la frequenza di aggiornamento del display è superiore alla frequenza fotogrammi target del gioco, non c'è alcun vantaggio dalla frequenza di aggiornamento più elevata, ma solo un aumento del consumo energetico. Sui dispositivi con frequenza di aggiornamento elevata, regola la frequenza di aggiornamento del display in modo che corrisponda il più possibile alla frequenza fotogrammi target del gioco.

Integrare o attivare la libreria di pacing dei frame Swappy

L'Android Game Development Kit (AGDK) include una libreria di pacing dei frame nota come Swappy. Swappy ottimizza la frequenza di aggiornamento del display del dispositivo in modo che corrisponda il più possibile alla frequenza fotogrammi del gioco. Se utilizzi un motore grafico personalizzato, consulta la guida alla libreria Frame Pacing per scoprire come integrarla nel tuo motore.

Swappy è già integrato nel motore Unreal (Frame Pacing per dispositivi mobili) e nel motore Unity (PlayerSettings.Android.optimizedFramePacing) e ottimizza la frequenza di aggiornamento del display se abilitata nel progetto di gioco.

Chiama l'API Android FrameRate

In alternativa all'integrazione della libreria di pacing dei frame, utilizza l'API Android per la frequenza fotogrammi per regolare direttamente la frequenza di aggiornamento del display.

Utilizzare l'API Vulkan per la grafica

Android supporta due API grafiche: l'API OpenGL ES precedente e l'API Vulkan più recente. Vulkan è ora l'API grafica principale su Android ed è più efficiente di OpenGL ES. Per ulteriori informazioni sui vantaggi di Vulkan e su come utilizzarlo, consulta Utilizzare Vulkan per la grafica.

Rispondere alle condizioni termiche del dispositivo

L'utilizzo elevato della CPU e della GPU del dispositivo genera calore. L'efficienza energetica si riduce man mano che il dispositivo si surriscalda. Se un dispositivo si surriscalda, riduce la frequenza della CPU e della GPU per ridurre il consumo energetico e consentire al dispositivo di raffreddarsi. Questo comportamento, chiamato throttling termico, influisce sulle prestazioni del gioco e sul tasso di consumo della batteria. Utilizza l'API Android Thermal per monitorare lo stato termico del dispositivo e regolare il carico di lavoro del gioco per evitare il throttling termico.

Esegui una query sulla modalità di gioco del dispositivo

La modalità Gioco è una funzionalità che consente all'utente di specificare se compensare le prestazioni con la durata della batteria, la durata della batteria con le prestazioni o selezionare un valore predefinito neutro. Se il tuo gioco supporta configurazioni di prestazioni variabili, utilizza l'API Game Mode per verificare questa preferenza e modificare di conseguenza le impostazioni del gioco.

Risorse aggiuntive

Profiler della potenza di Android Studio

Esempio di demo sull'efficienza energetica di Unity (GitHub)