Interventi relativi alla modalità di gioco ottimizzazioni specifiche per il gioco impostate da produttori di apparecchiature originali (OEM) per migliorare le prestazioni dei giochi che non vengono più aggiornati sviluppatori. Ad esempio:
- Utilizzo del ridimensionamento del backbuffer di WindowManager.
- Utilizzo di ANGLE anziché di driver GLES nativi.
Puoi fare in modo che il tuo gioco supporti API Game Mode, per fare in modo che sostituisca Interventi relativi alla modalità di gioco forniti dall'OEM.
L'API Game Mode e gli interventi sono disponibili su:
- Seleziona dispositivi Android 12
- Dispositivi con Android 13 o versioni successive
Ogni gioco può:
- Implementare il comportamento dell'API Game Mode,
- Proporre agli OEM le impostazioni relative agli interventi per la modalità di gioco.
- Disattivare esplicitamente gli interventi relativi alla modalità di gioco.
Premessa
Questa sezione descrive cosa fanno gli interventi relativi alla modalità di gioco e come ottimizzarli il tuo gioco per ogni modalità.
Ridimensionamento del backbuffer di WindowManager
Il ridimensionamento del backbuffer WindowManager può ridurre il carico della GPU di un dispositivo. Può anche ridurre il consumo della batteria quando il gioco viene riaddestrato con una frequenza frame target.
L'attivazione del ridimensionamento può comportare una riduzione fino al 30% della GPU e al 10% delle dimensioni complessive consumo di energia del sistema. I risultati possono variare in base dispositivo usato, condizioni ambientali e altri fattori, come la simultanea e l'elaborazione dei dati.
È probabile che un gioco senza pacing vincolato alla GPU abbia frequenze fotogrammi più elevate. durante la riduzione dei carichi di GPU.
Consigliamo vivamente che tutti i giochi siano ben fatto, perché frequenze fotogrammi non uniformi significativamente impatto sulla percezione del rendimento da parte degli utenti.
Limitazione FPS
La limitazione FPS di Android è un intervento relativo alla modalità di gioco che consente ai giochi di funzionare a un una frequenza fotogrammi più stabile per ridurre il consumo della batteria. L'intervento è disponibile su Android 13 o versioni successive. Per ulteriori informazioni informazioni, consulta la panoramica sulla limitazione f/s.
Valutare gli interventi relativi alla modalità di gioco
In questa sezione viene utilizzato il comando adb.
Configura le modalità
Devi disattivare le modalità di gioco nell'app File di configurazione della modalità di gioco prima di testare gli interventi sulla modalità di gioco. In caso contrario, la piattaforma ignorerà e rispettano solo le ottimizzazioni in-game.
<?xml version="1.0" encoding="UTF-8"?>
<game-mode-config
xmlns:android="http://schemas.android.com/apk/res/android"
android:supportsBatteryGameMode="false"
android:supportsPerformanceGameMode="false"
/>
(Facoltativo) Eseguire il backup della configurazione esistente dei dispositivi
Per Pixel o altri dispositivi, potrebbe esserci un intervento di gioco preesistente nella configurazione del dispositivo. Puoi eseguire query sulla configurazione utilizzando il comando:
adb shell device_config get game_overlay <PACKAGE_NAME>
Se la query restituisce null
, ignora la configurazione preesistente. Altrimenti, salva
e reimpostarla dopo la valutazione.
Valuta gli interventi
Per valutare autonomamente l'intervento di ridimensionamento del backbuffer WindowManager, utilizza la classe seguente comando per impostare diversi valori di ridimensionamento del buffer WindowManager modalità di gioco.
adb shell device_config put game_overlay <PACKAGE_NAME>
mode=2,downscaleFactor=0.9:mode=3,downscaleFactor=0.5
Nell'esempio precedente, mode=2
è "Rendimento" e mode=3
è "Risparmio energetico". Il valore downscaleFactor
è specificato come percentuale
viene applicata all'impostazione di ridimensionamento (ad esempio, 0,7 corrisponde al 70% e 0,8 all'80%). Un 90%
(0,9) il ridimensionamento è quasi trascurabile, mentre il 50% (0,5) è significativo.
Avviso: i processi secondari potrebbero non essere ridimensionati correttamente in Android 12. Nella assicurati che toast e popup siano visualizzati correttamente. Me consigliamo di limitare l'impostazione di ridimensionamento ad almeno il 70%.
Dopo aver configurato i nuovi valori di ridimensionamento, passa da una modalità di gioco all'altra per scoprire come il gioco è interessato dall'intervento di ridimensionamento del backbuffer di WindowManager:
adb shell cmd game mode [standard|performance|battery] <PACKAGE_NAME>
Assicurati di riavviare il gioco dopo aver selezionato ciascuna modalità. La l'intervento di downscaling richiede il riavvio dell'app.
Disattivazione degli interventi
Puoi controllare se un intervento viene applicato al tuo gioco disattivando l'opzione. Ogni intervento ha una propria impostazione di disattivazione.
- Lo stesso file XML di configurazione utilizzato per controllare l'attivazione e la disattivazione del gioco La modalità viene utilizzata anche per le impostazioni di intervento:
<?xml version="1.0" encoding="UTF-8"?>
<game-mode-config
xmlns:android="http://schemas.android.com/apk/res/android"
android:allowGameDownscaling="false"
android:allowGameFpsOverride="false"
/>
- Ricrea e invia di nuovo il gioco per disattivarlo.
Per impostazione predefinita, gli interventi impostati dai produttori di apparecchiature originali OEM, a meno che tu non decida esplicitamente di non utilizzarli per il gioco.
Risorse
Per saperne di più sulla misurazione e sull'ottimizzazione delle prestazioni dei giochi:
Profilo di sistema: analizza l'utilizzo della CPU e le chiamate alla grafica.
Android GPU Inspector - Grafica del profilo attivata Android.
Libreria del pacing frame Android: assistenza per OpenGL e I giochi Vulkan ottengono un rendering fluido e un pacing corretto dei frame.
Android Performance Tuner: misura e ottimizzare la frequenza fotogrammi e la grafica su dispositivi Android su larga scala.
Energy Profiler: scopri dove viene usata la tua app più energia del necessario.