Los juegos para Android se juegan principalmente en dispositivos con batería, como teléfonos o tablets. Optimiza la eficiencia energética de tu juego para ayudar a los usuarios a jugar durante más tiempo y darles confianza para iniciar una sesión de juego, incluso cuando su dispositivo no esté completamente cargado.
Usa una frecuencia de actualización de pantalla óptima
La frecuencia de actualización de la pantalla es la velocidad a la que el panel de la pantalla de un dispositivo puede cambiar para mostrar información nueva. Tradicionalmente, los dispositivos de mano usaban una frecuencia de actualización de 60 Hz, que actualizaba el contenido de la pantalla sesenta veces por segundo. Los dispositivos modernos suelen tener pantallas con frecuencias de actualización más altas que pueden actualizarse a 90 Hz o 120 Hz. Las tasas de actualización más altas generan experiencias del usuario más fluidas para acciones como el desplazamiento, pero aumentan el consumo de energía del panel de la pantalla.
Por lo general, los juegos tienen una velocidad de fotogramas objetivo de 30 o 60 fotogramas por segundo. Si la frecuencia de actualización de la pantalla es superior a la velocidad de fotogramas objetivo del juego, no se obtiene ningún beneficio de la frecuencia de actualización más alta, solo se aumenta el consumo de energía. En los dispositivos con alta frecuencia de actualización, ajusta la frecuencia de actualización de la pantalla para que coincida con la velocidad de fotogramas objetivo del juego lo más cerca posible.
Cómo integrar o habilitar la biblioteca de Frame Pacing de Swappy
Android Game Development Kit (AGDK) incluye una biblioteca de Frame Pacing conocida como Swappy. Swappy optimiza la frecuencia de actualización de la pantalla del dispositivo para que coincida con la velocidad de fotogramas del juego lo más cerca posible. Si usas un motor de juego personalizado, consulta la guía de la biblioteca de Frame Pacing para aprender a integrarla en tu motor.
Swappy ya está integrado en el motor Unreal (Frame Pacing for Mobile Devices) y en el motor Unity (PlayerSettings.Android.optimizedFramePacing) y optimiza la frecuencia de actualización de la pantalla si está habilitada en tu proyecto de juego.
Llama a la API de la velocidad de fotogramas de Android
Como alternativa a la integración de la biblioteca de Frame Pacing, usa la API de frecuencia de fotogramas de Android para ajustar directamente la frecuencia de actualización de la pantalla.
Cómo usar la API de Vulkan para gráficos
Android admite dos APIs de gráficos: la API de OpenGL ES más antigua y la API de Vulkan más reciente. Vulkan ahora es la principal API de gráficos de Android y es más eficiente que OpenGL ES. Para obtener más información sobre los beneficios de Vulkan y cómo usarlo, consulta Cómo usar Vulkan para gráficos.
Responde a las condiciones térmicas del dispositivo
El alto uso de la CPU y la GPU del dispositivo genera calor. La eficiencia energética disminuye a medida que el dispositivo se calienta. Si un dispositivo se calienta demasiado, reduce la velocidad de la CPU y la GPU para reducir el consumo de energía y permitir que el dispositivo se enfríe. Este comportamiento, conocido como limitación térmica, afecta el rendimiento del juego y su tasa de agotamiento de la batería. Usa la API de Android Thermal para supervisar el estado térmico del dispositivo y ajustar la carga de trabajo del juego para evitar la limitación térmica.
Cómo consultar el modo de juego del dispositivo
El modo de juego es una función que permite al usuario especificar si prefiere sacrificar el rendimiento por la duración de batería, la duración de batería por el rendimiento o seleccionar una opción predeterminada neutral. Si tu juego admite configuraciones de rendimiento variable, usa la API de Game Mode para verificar esta preferencia y modificar la configuración del juego según corresponda.
Recursos adicionales
Generador de perfiles de energía de Android Studio
Ejemplo de demostración de eficiencia energética de Unity (GitHub)