Intervenciones de modo de juego

Las intervenciones de Game Mode optimizaciones específicas para el juego establecidas por los fabricantes del equipo original (OEM) para mejorar el rendimiento de los juegos que desarrolladores. Por ejemplo:

  • Uso del cambio de tamaño del búfer de reserva de WindowManager
  • Uso de ANGLE en lugar de controladores GLES nativos

Puedes obtener asistencia para tu juego y administrar la API de Game Mode para que anule Intervenciones de Game Mode proporcionadas por el OEM

La API de Game Mode y sus intervenciones están disponibles en los siguientes dispositivos:

En cada juego, se puede hacer lo siguiente:

  • Implementa el comportamiento de la API de Game Mode,
  • Propón parámetros de configuración de intervenciones de Game Mode a los OEMs
  • Inhabilita de forma explícita las intervenciones de Game Mode.

Información general

En esta sección, se describe qué hacen las intervenciones de Game Mode y cómo optimizarlas el juego para cada modo.

Cómo cambiar el tamaño del búfer de reserva de WindowManager

La intervención del cambio de tamaño del búfer de reserva de WindowManager puede reducir la carga sobre la GPU de un dispositivo. También puede disminuir el consumo de batería cuando el ritmo de un juego se ajusta a una velocidad de fotogramas objetivo.

Si habilitas el cambio de tamaño, puedes reducir hasta un 30% de la GPU y un 10% de las funciones totales el consumo de energía del sistema. Los resultados pueden variar según el dispositivo que se use, las condiciones del entorno y otros factores, como el procesamiento simultáneo.

Es probable que un juego sin ritmo vinculado a la GPU experimente velocidades de fotogramas más altas durante cargas menores sobre la GPU.

Recomendamos que todos los juegos Buen ritmo, porque las velocidades de fotogramas desiguales son significativamente impactan en la percepción del rendimiento de los usuarios.

Limitación de FPS

La limitación de FPS de Android es una intervención de Game Mode que ayuda a que los juegos se ejecuten en un más estable de la velocidad de fotogramas para reducir el consumo de batería. La intervención es disponible en Android 13 o versiones posteriores. Para ver más consulta la descripción general de la limitación de FPS.

Cómo evaluar las intervenciones de Game Mode

En esta sección, se usa el comando adb.

Cómo configurar los modos

Debes inhabilitar los modos de juego en la app Archivo de configuración de Game Mode antes de probar las intervenciones de Game Mode. De lo contrario, la plataforma omitirá y respetar solo las optimizaciones dentro del juego.

<?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"
/>

(Opcional) Crea una copia de seguridad de la configuración del dispositivo existente

En el caso de Pixel y otros dispositivos, es posible que haya una intervención del juego preexistente. config en la configuración de tu dispositivo. Puedes consultar la configuración con el siguiente comando:

adb shell device_config get game_overlay <PACKAGE_NAME>

Si la consulta muestra null, ignora la configuración preexistente. De lo contrario, guárdala y restablecerlos después de la evaluación.

Evaluar intervenciones

Para evaluar por su cuenta la intervención de cambio de tamaño del búfer de reserva de WindowManager, usa el siguiente comando para establecer diferentes valores de cambio de tamaño del búfer de WindowManager modos de juego.

adb shell device_config put game_overlay <PACKAGE_NAME>
mode=2,downscaleFactor=0.9:mode=3,downscaleFactor=0.5

En el ejemplo anterior, mode=2 es "Performance" y mode=3. es "Ahorro de batería". El valor downscaleFactor se especifica como un porcentaje que se aplica al parámetro de configuración de cambio de tamaño (por ejemplo, 0.7 es 70% y 0.8 es 80%). A 90% (0.9) es casi insignificante, mientras que el 50% (0.5) es significativo.

Advertencia: Es posible que no se pueda cambiar el tamaño de los procesos secundarios correctamente en Android 12. En en particular, asegúrate de que los avisos y las ventanas emergentes se rendericen correctamente. Mié recomendamos que limites la configuración de cambio de tamaño a al menos un 70%.

Después de configurar las nuevas vales de cambio de tamaño, cambia entre los modos de juego para ver cómo El juego se ve afectado por la intervención de cambio de tamaño del búfer de reserva de WindowManager:

adb shell cmd game mode [standard|performance|battery] <PACKAGE_NAME>

Asegúrate de reiniciar el juego después de seleccionar cada modo de juego. El la intervención de reducción de escala requiere reiniciar la app.

Cómo inhabilitar las intervenciones

Puedes controlar si se aplica una intervención a tu juego desactivando la opción. Cada intervención tiene su propia configuración de inhabilitación.

  1. El mismo archivo de configuración en formato XML que se usa para controlar la habilitación o inhabilitación del juego Los modos también se usan para la configuración de intervención:
<?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"
/>
  1. Vuelve a compilar y enviar el juego a fin de inhabilitar la intervención.

De forma predeterminada, las intervenciones establecidas por los fabricantes del equipo original (OEMs), a menos que inhabilites el uso de tu juego de forma explícita.

Recursos

Si deseas obtener más información para medir y optimizar el rendimiento del juego, consulta los siguientes recursos: