Por qué los juegos de navegador tienen lag y cómo arreglarlo

El clic de tu ratón llega a un juego nativo en un puñado de milisegundos. En un juego de navegador, ese mismo clic hace cola detrás del sistema operativo, un motor de JavaScript y un compositor antes de convertirse en píxel. Aquí verás dónde añaden retraso los navegadores, cómo medir tu parte y las soluciones que realmente mueven el número.

Diagrama de cronómetro que muestra las etapas del retraso de entrada entre un clic de ratón y la respuesta de un juego de navegador
Entre tu clic y el píxel, un clic de navegador pasa por más manos de lo que crees.

La cadena de entrada, del interruptor al píxel

Cada clic que haces recorre una cadena de montaje. Cada etapa añade su propio retraso, y el navegador está en medio de todo:

EtapaCosto típicoNotas
Interruptor del ratón + debounce1-4 msLos interruptores ópticos son los más rápidos; consulta nuestra guía de debounce del ratón
Sondeo USB / inalámbrico1-8 ms1 ms con sondeo a 1000 Hz; hasta 8 ms a 125 Hz
Despacho de eventos del SO~1 msNormalmente barato, salvo que el sistema esté cargado
Despacho de eventos del navegador1-10 ms+Hit-testing, hilo principal de JS, extensiones
Espera de requestAnimationFrame0-16,7 msHasta un fotograma completo a 60 Hz
Compositor + renderizado2-8 msAquí importa la aceleración de hardware
Escaneo de pantalla + respuesta2-17 msRefresco del panel y tiempo de respuesta del píxel

Súmalo todo y un juego de navegador en un equipo a 60 Hz puede acumular 40-60 ms de retraso del clic al fotón antes de que la lógica del juego haga nada. Un juego nativo con entrada raw se salta varias de esas etapas por completo. Esa diferencia es exactamente por qué el mismo ratón puede sentirse preciso en el escritorio y pastoso en una pestaña del navegador.

El impuesto de la pantalla: 16,7 ms antes de ver nada

Aquí va el dato que vale la pena compartir en las LAN parties: a 60 Hz, la pantalla por sí sola puede añadir hasta 16,7 ms de retraso (un fotograma completo) antes de que tu clic se haga visible. Esa sola etapa cuesta más que todo el pipeline de un ratón gaming: un buen interruptor óptico dispara en aproximadamente 1 ms y un sondeo a 1000 Hz añade otro 1 ms.

La gente gasta encantada 150 dólares para recortar 2 ms de un ratón mientras deja 16,7 ms sobre la mesa en la configuración del monitor. Pasa a 144 Hz y el impuesto por fotograma baja a 6,9 ms; a 240 Hz son 4,2 ms. Si tu monitor es capaz pero está mal configurado (una situación deprimentemente común), nuestra guía para comprobar tu frecuencia de actualización real toma dos minutos.

Nada de esto significa que el ratón no importe. Significa que la latencia es un presupuesto que se gasta en toda la cadena, y las partidas más grandes rara vez son las que tienen mejor marketing.

Midiendo la parte del retraso que pertenece al navegador

No puedes arreglar lo que no puedes aislar. Nuestra prueba de latencia de entrada del navegador mide el segmento que el navegador controla: compara la marca de tiempo de cada evento de entrada con el reloj de alta resolución en el momento en que el manejador del evento realmente se ejecuta, y luego reporta una mediana y un percentil 95 sobre un lote de clics, toques o pulsaciones de teclas.

Lee los resultados así: la mediana es tu retraso de despacho típico; en un navegador de escritorio sano, suele estar en los milisegundos bajos de un dígito. El p95 es la cola: qué tan mal se pone cuando el hilo principal tropieza. Una mediana de 2 ms con un p95 de 30 ms significa que tu navegador está bien en promedio pero se atasca con regularidad, lo que en un juego se siente como entradas que se pierden al azar.

Sé honesto sobre lo que esto mide: el retraso de despacho en la frontera de eventos del navegador. No incluye el interruptor de tu ratón, el transporte USB ni el escaneo de la pantalla; la propia sección de guía de la herramienta lo dice. Para el panorama completo de extremo a extremo, recorre la lista de verificación de input lag cuando termines aquí.

Por qué el mismo ratón se siente peor en un navegador

Los juegos nativos leen la entrada cerca del metal: APIs de entrada raw que obtienen los datos del ratón con mínima ceremonia. Los navegadores toman la ruta escénica. El SO entrega el evento al navegador, el navegador decide qué elemento está bajo el cursor (haciendo hit-testing de todo el DOM), lo despacha a JavaScript en el hilo principal, y solo entonces puede reaccionar el código del juego. Si el hilo principal está ocupado ejecutando un script de anuncios, tu clic espera en la fila.

Tres amplificadores específicos del navegador:

También es la razón por la que el teclado puede sentirse esponjoso en el navegador mientras el mismo teclado es instantáneo en una app nativa: un patrón que exploramos en ¿mi teclado tiene lag? y en el más profundo análisis de latencia del teclado.

Soluciones que realmente funcionan

En orden aproximado de impacto:

Aplícalas de una en una y vuelve a ejecutar la prueba de latencia después de cada cambio. Ver caer tu propio p95 de 25 ms a 6 ms convence más que cualquier guía de ajustes.

Vsync y ritmo de fotogramas, en un párrafo

El renderizado del navegador está sincronizado con el vsync: los fotogramas se presentan al compás del refresco de tu pantalla. Eso es bueno (evita el tearing), pero significa que tu juego solo puede actualizarse en los límites de fotograma, y cualquier fotograma que pierda su cita espera un fotograma extra completo. A 60 Hz, una cita perdida cuesta 16,7 ms; a 240 Hz, la misma pérdida cuesta 4,2 ms. El ritmo de fotogramas irregular es la razón por la que un juego de navegador puede reportar '60 FPS' y aun así sentirse entrecortado: los fotogramas están todos ahí, solo que llegan a tiempos desiguales. La alta frecuencia de actualización es la cura más barata, porque encoge el tamaño de cada error posible.

Cuando no es el navegador

Si has hecho todo lo anterior y los juegos siguen sintiéndose raros, el cuello de botella está en otra parte de la cadena. Los sospechosos habituales fuera del navegador: un televisor en lugar de un monitor (el modo juego desactivado puede añadir 30-80 ms), un teclado o ratón Bluetooth, un monitor todavía a 60 Hz, carga pesada del sistema por otra app o, en juegos online, la simple latencia de red, que es un problema diferente disfrazado igual. Un ping de 20 ms no es input lag, pero tus manos no pueden notar la diferencia; nuestro artículo sobre el tiempo de reacción promedio explica por qué 20 ms está justo en el límite de la percepción humana.

Trabaja el sistema completo metódicamente con la lista de verificación de input lag: mide cada etapa, cambia una cosa, mide de nuevo. Cazar latencias solo es frustrante cuando adivinas.

En resumen

Los juegos de navegador se sienten con lag porque un clic de navegador viaja más lejos que uno nativo: a través del hit-testing, el hilo principal de JavaScript, un compositor con vsync y finalmente la pantalla. Las mayores victorias son aburridas y gratis: aceleración de hardware activada, frecuencia de actualización bien configurada, pestañas y extensiones eliminadas, pantalla completa activada, Bluetooth desactivado. Mide el retraso de despacho de tu navegador, arregla las etapas que controlas y solo entonces culpa al juego. La mayoría de los 'juegos de navegador con lag' son en realidad configuraciones de navegador con lag.

¿Listo para probar tu propio equipo?

Prueba de latencia de entrada del navegador

Preguntas frecuentes

¿Por qué los juegos de navegador se sienten con lag comparados con los juegos de verdad?

Los juegos nativos leen la entrada a través de APIs de bajo nivel con procesamiento mínimo. Los navegadores enrutan cada entrada a través del despacho del SO, el hit-testing del DOM y el hilo principal de JavaScript antes de que el código del juego la vea, y luego presentan los fotogramas sincronizados con tu pantalla. Una pestaña ocupada o un monitor a 60 Hz añaden fácilmente 20-40 ms que un juego nativo nunca paga.

¿Cómo reduzco el input lag en los juegos de navegador?

Las cinco soluciones de mayor impacto: activa la aceleración de hardware, configura tu monitor a su frecuencia de actualización real, cierra pestañas y extensiones en segundo plano, juega a pantalla completa y usa periféricos con cable o de 2,4 GHz en lugar de Bluetooth. Mide el cambio con la prueba de latencia de entrada del navegador después de cada paso.

¿El Bluetooth añade input lag?

Sí: típicamente 10-20 ms sobre todo lo demás, más atascos ocasionales cuando los paquetes se retransmiten. Bluetooth está bien para escribir y trabajar, pero para juegos un dongle inalámbrico de 2,4 GHz o una conexión por cable es mediblemente más ajustado.

¿El input lag del navegador es lo mismo que el ping?

No. El input lag es el retraso entre tu acción física y la reacción local del juego; el ping es el viaje de ida y vuelta de red a un servidor. Se sienten idénticos en la mano (haces clic y algo ocurre tarde), y por eso se confunden. La prueba de latencia mide el retraso de despacho local; el ping necesita una prueba de red.

¿Un monitor de 144 Hz reduce el input lag en un navegador?

Sí, de dos maneras. La espera de fotograma por vsync baja de hasta 16,7 ms a 60 Hz a 6,9 ms a 144 Hz, y cualquier cita de fotograma perdida cuesta 10 ms menos. Todo lo anterior (ratón, SO, despacho del navegador) sigue igual, pero el impuesto del lado de la pantalla se encoge de inmediato.

Menú