120fps en desarrollo móvil — qué es, características de ProMotion y optimización

Autor: IT Sectr Publicado: 2026-04-01 Tiempo de lectura: 8 min

120fps — una frecuencia de 120 cuadros por segundo disponible en pantallas con tasa de refresco de 120 Hz, donde cada cuadro toma 8.3 ms. Según Apple WWDC 2023 Session, ProMotion cambia automáticamente la frecuencia de 24 a 120 Hz para equilibrar suavidad y consumo de energía. 8.3 ms es la mitad del presupuesto estándar, lo que exige una optimización seria del renderizado.

Puntos clave

  • 120fps — frecuencia de 120 cuadros por segundo con un presupuesto de renderizado de 8.3 ms por cuadro
  • ProMotion — tecnología de Apple con frecuencia dinámica de 24 a 120 Hz
  • Pantallas LTPO — paneles con óxido policristalino de baja temperatura que soportan 1–120 Hz
  • Frame pacing — uniformidad en la salida de cuadros, crítica a 120fps
  • Optimización para 120fps requiere código dos veces más eficiente que para 60fps

Qué es 120fps

120fps es el doble de la frecuencia estándar, donde la pantalla actualiza la imagen 120 veces por segundo. Cada cuadro tiene un presupuesto de 8.33 ms — la mitad que a 60fps. Esto significa que la GPU y la CPU deben procesar gráficos el doble de rápido, y todos los algoritmos que funcionan en 16.7 ms a 60fps solo encajan a 120fps si son el doble de eficientes.

El primer dispositivo móvil con pantalla de 120 Hz fue el Razer Phone (2017) con panel IGZO de Sharp. Apple introdujo 120 Hz en el iPad Pro (2017) bajo el nombre ProMotion, y en iPhones solo en 2021 con el iPhone 13 Pro. En Android, 120 Hz se volvió masivo a partir de 2020: Samsung Galaxy S20, OnePlus 8 Pro, Xiaomi Mi 10. Hoy, 90–120 Hz es el estándar para dispositivos insignia, y la tecnología LTPO permite el cambio dinámico de frecuencia.

La percepción del usuario de 120fps difiere de 60fps no tanto por la ausencia de tirones, sino por la sensación de respuesta instantánea — el cursor, el desplazamiento y las animaciones siguen al dedo con latencia mínima. Esta sensación a menudo se describe como una pantalla “líquida” o “aceitosa”. Después de usar 120 Hz, volver a 60 Hz se siente subjetivamente como retardos, incluso si no hay caídas objetivas de cuadros.

Cómo funcionan las pantallas de 120 Hz

Una pantalla de 120 Hz actualiza físicamente los píxeles 120 veces por segundo, enviando una señal a través del bus MIPI DSI/DPI a frecuencia doble. Cada píxel recibe un nuevo valor de brillo cada 8.3 ms. Para paneles OLED, esto significa que el tiempo de emisión de cada subpíxel se reduce, requiriendo una retroiluminación más brillante para mantener la misma luminosidad de imagen.

Tecnología LTPO

LTPO (óxido policristalino de baja temperatura) es una tecnología de fabricación de pantallas OLED que combina LTPS (alta velocidad de conmutación) e IGZO (bajo consumo en estático). LTPO permite que la pantalla cambie dinámicamente su frecuencia de 1 a 120 Hz sin coste energético adicional. En modo Always-On Display, la frecuencia baja a 1 Hz; durante el desplazamiento, sube a 120 Hz. Esto proporciona un ahorro de energía de hasta el 30% en comparación con pantallas que funcionan constantemente a 120 Hz.

Frame Pacing a 120fps

Frame pacing — la uniformidad de los intervalos entre cuadros, es el parámetro más importante a 120fps. Mientras que a 60fps una diferencia de 2–3 ms entre cuadros es imperceptible, a 120fps la misma diferencia absoluta representa el 25% de la duración del cuadro y se percibe como tirón. Para un 120fps fluido, cada cuadro debe encajar en 8.3 ms ±1 ms. Herramientas como FrameRate en Xcode Instruments muestran no solo el FPS promedio sino también un histograma de intervalos para evaluar el frame pacing.

swift
// iOS — detección de pantalla de 120 Hz mediante CADisplayLink
func checkDisplayRefreshRate() {
    let link = CADisplayLink(target: self,
                                  selector: #selector(step))
    if let preferredRate = link?.preferredFrameRateRange {
        print("Frecuencia máx.: \("preferredRate.maximum) Hz")
    }
}

ProMotion en iOS

ProMotion es la marca registrada de Apple para pantallas con frecuencias de actualización adaptativas de hasta 120 Hz. Introducida por primera vez en el iPad Pro 10.5 (2017), luego apareció en el iPhone 13 Pro (2021) y MacBook Pro (2021). ProMotion no es solo 120 Hz — es gestión inteligente de frecuencia: el sistema analiza el tipo de contenido y cambia la frecuencia para el equilibrio óptimo entre rendimiento y consumo de energía.

Modos de funcionamiento de ProMotion

ProMotion soporta cuatro modos: 24 Hz para contenido estático y vídeo a 24fps, 30 Hz para vídeo a 30fps, 60 Hz para navegación de UI y 120 Hz para desplazamiento y juegos. El cambio entre modos ocurre dentro de un solo cuadro (8.3 ms) y es imperceptible para el usuario. Los desarrolladores pueden influir en la selección de frecuencia mediante preferredFrameRateRange en CADisplayLink, pero la decisión final la toma el sistema basándose en el análisis del contenido.

API para desarrolladores

Apple proporciona APIs para trabajar con ProMotion desde iOS 15. CADisplayLink.preferredFrameRateRange permite establecer un rango de frecuencia preferido. UIScene.ActivationConditions puede afectar la frecuencia al transicionar entre escenas. Para renderizado Metal, CAMetalLayer.displaySyncEnabled debe ser true para sincronización con ProMotion. Si una aplicación no está optimizada para 120fps, iOS la cambia automáticamente a 60 Hz, lo que se puede ver en Xcode en la sección GPU Report.

swift
// iOS — solicitud de 120fps para modo de juego
let displayLink = CADisplayLink(
    target: self,
    selector: #selector(gameLoop)
)
if #available(iOS 15.0, *) {
    displayLink?.preferredFrameRateRange =
        CAFrameRateRange(minimum: 80,
                          maximum: 120,
                          preferred: 120)
}
displayLink?.add(to: .current,
                    forMode: .default)

Optimización para 120fps

La optimización para 120fps no se trata solo de duplicar la velocidad del código, sino de replantear la arquitectura de renderizado. Las operaciones que cabían en 16.7 ms a 60fps ahora deben completarse en 8.3 ms. Esto afecta a todas las etapas del pipeline: preparación de CPU, renderizado de GPU y llamadas al sistema.

Reducción de draw calls para 120fps

A 120fps, el número de draw calls por cuadro debe ser la mitad que a 60fps para mantener la misma carga de GPU. Si 400 draw calls son aceptables a 60fps, entonces a 120fps no se permiten más de 200. Usa texture atlases, fusión de mallas e instanciado de GPU para reducir las llamadas de dibujo. En Metal, usa Indirect Command Buffers; en Vulkan, usa Secondary Command Buffers para grabación paralela de comandos.

Shaders — otro factor crítico. Los shaders de píxeles complejos con múltiples muestreos de textura y operaciones matemáticas pueden exceder fácilmente el presupuesto de 8.3 ms. Usa shaders de baja precisión (half en lugar de float), reduce el número de instrucciones y muestras de textura. En GPUs móviles (Apple A17, Snapdragon 8 Gen 3), cada muestreo de textura toma 2–4 ciclos, y a 120fps esto puede convertirse en un cuello de botella.

CPU y Main Thread

A 120fps, el hilo principal debe preparar un cuadro en 4–5 ms para dejar tiempo al renderizado de GPU. Cualquier operación síncrona en el hilo principal — lectura de base de datos, análisis JSON, carga de imágenes — crea tirones. Mueve todas las operaciones pesadas a hilos secundarios, usa APIs asíncronas y pools de hilos. En iOS, DispatchQueue con qualityOfService .userInteractive debe reservarse solo para código crítico de renderizado.

ComponentePresupuesto 120fpsPresupuesto 60fps
CPU (hilo principal)4 ms8 ms
Renderizado GPU4 ms8 ms
Composición0.3 ms0.7 ms
Espera VSync0–2 ms0–5 ms

120fps vs 60fps

Comparar 120fps y 60fps no se reduce a duplicar la suavidad. La diferencia se percibe de forma diferente según el tipo de contenido. Para desplazamiento y animaciones de UI, 120fps proporciona una interfaz subjetivamente más “responsiva”. Para juegos, la ventaja de 120fps se manifiesta en menor desenfoque de movimiento y seguimiento más preciso de objetos rápidos.

Consumo de energía — el principal compromiso. 120fps consume 30–50% más energía que 60fps al mismo brillo de pantalla. Esto significa que en una batería de 4000 mAh, una hora de juego a 120fps descarga la batería aproximadamente 25–30% más rápido. Las pantallas LTPO resuelven parcialmente el problema reduciendo la frecuencia en escenas estáticas a 1 Hz, pero durante el uso activo (desplazamiento, juegos) la frecuencia se mantiene al máximo.

La elección entre 60fps y 120fps depende de las prioridades del desarrollador. Para redes sociales, mensajería y aplicaciones de noticias, 120fps no ofrece una ventaja significativa — la interacción principal (lectura, entrada de texto) no se beneficia de la ultra-suavidad. Para juegos, mapas, editores gráficos y aplicaciones con animación intensiva, 120fps se convierte en una ventaja competitiva y un marcador de calidad.

Probar 120fps requiere un enfoque especial: las métricas estándar de 60fps no revelan problemas de frame pacing a 120 Hz. Usa una cámara de alta velocidad (120+ fps) para grabar el comportamiento real de la pantalla o herramientas integradas de la plataforma — Xcode Metal Capture para iOS y AGI (Android GPU Inspector) para Android. Estas herramientas muestran el tiempo exacto de cada cuadro, incluyendo la espera VSync, y ayudan a identificar micro-tirones.

Preguntas frecuentes

¿Es 120fps siempre mejor que 60fps?

No siempre. 120fps requiere el doble de energía y recursos computacionales. Para contenido estático e interfaces simples, 60fps es suficiente. La ventaja de 120fps es notable en escenas dinámicas: desplazamiento, juegos, animaciones de transición.

¿Cómo comprobar si una aplicación funciona a 120fps?

Usa Xcode Instruments (plantilla Core Animation) o Android Studio Profiler. En iOS, verifica CADisplayLink.timestamp — el intervalo entre llamadas debe ser de aproximadamente 8.3 ms. En Android, activa Show refresh rate en Developer Options.

¿Por qué 120fps agota la batería más rápido?

La pantalla actualiza los píxeles el doble de veces, la GPU realiza el doble de operaciones de renderizado y la CPU procesa el doble de cuadros. Cada operación consume energía. Las pantallas LTPO reducen la frecuencia en estático, pero durante el uso activo, el consumo de energía aumenta proporcionalmente a la frecuencia.

¿Puede una aplicación funcionar a 120fps en Android?

. A partir de Android 11, el sistema soporta diferentes frecuencias de actualización. Los desarrolladores pueden solicitar 120 Hz mediante WindowManager.setPreferredRefreshRate. Sin embargo, no todos los dispositivos mantienen establemente 120fps — es necesaria optimización del renderizado GPU.

¿Notará un usuario normal la diferencia entre 60 y 120fps?

En una prueba ciega, la mayoría de los usuarios notan la diferencia durante el desplazamiento y las animaciones. Sin embargo, para el uso cotidiano (redes sociales, vídeo, mensajería), la diferencia es subjetivamente pequeña. Después de acostumbrarse a 120 Hz, volver a 60 Hz se siente como ralentización.

Resumen

  • 120fps — frecuencia con presupuesto de 8.3 ms para animación ultrafluida
  • ProMotion — tecnología adaptativa de Apple con rango de 24–120 Hz
  • Pantallas LTPO cambian dinámicamente la frecuencia de 1 a 120 Hz para ahorrar energía
  • Frame pacing es crítico a 120fps — una desigualdad de 2–3 ms ya es notable
  • Draw calls a 120fps no deben superar 200 por cuadro
  • Consumo de energía a 120fps es 30–50% mayor que a 60fps
  • Elegir 120fps está justificado para juegos, mapas y aplicaciones con animación intensiva

Desarrollaremos una aplicación móvil llave en mano

IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.

Discutir el proyecto

Lea también