El desgarro en Wayland: ¿necesario o molesto?
Índice de contenidos
🔖 La perfección de cada cuadro de Wayland
🔖 El protocolo de actualización de desgarro
🔖 Sincronización asincrónica y tearing
🔖 Ventajas y desventajas del tearing
🔖 La opinión de la comunidad
🔖 El futuro del juego en Wayland
🔖 Conclusión
🔖 Preguntas frecuentes
La perfección de cada cuadro de Wayland
Sin duda, uno de los principios de diseño fundamentales de Wayland es el famoso "cada cuadro es perfecto". En pocas palabras, esto significa que las aplicaciones tendrán el control suficiente sobre el renderizado para que nunca veamos desgarros, retrasos, redibujados o parpadeos. Y para el uso común de escritorio, esta sin duda es una experiencia mucho mejor para ver vídeos, navegar por la web o mover ventanas.
Sin embargo, este principio ha sido un gran dolor de cabeza para Wayland, ya que es un diseño fundamentalmente defectuoso. Porque no queremos que cada cuadro sea perfecto. Hay situaciones, como en los juegos de acción rápida, donde eso realmente no importa. Lo que queremos es una latencia de entrada baja y cuadros recientes, incluso si eso significa un poco de desgarro de pantalla.
El protocolo de actualización de desgarro
Es por eso que recientemente se ha introducido el protocolo de actualización de desgarro (Tearing Update Protocol), que básicamente permite que el compositor permita que ocurra el desgarro. Esto no significa que el desgarro sea óptimo o Algo que queramos que suceda, pero al menos nos da la opción de que suceda.
Este protocolo proporciona dos modos de presentación separados: el modo VSsync tradicional, donde se presenta el último cuadro disponible del cliente sin que se pueda observar desgarro; y el modo asíncrono, donde los cuadros del cliente se presentan tan pronto como sea posible después del compromiso, lo que puede causar desgarro.
Sincronización asincrónica y tearing
La sincronización asincrónica funciona de la siguiente manera: en un monitor de 60 Hz, por ejemplo, la pantalla tarda aproximadamente 16,67 milisegundos en actualizar toda la pantalla, incluido el intervalo de retroceso (V-Blank) donde la pantalla vuelve a la parte superior.
Con VSSync, el GPU sincroniza sus actualizaciones con este ciclo, asegurándose de que solo se muestre una imagen completa por cada ciclo de actualización. Pero con la actualización asincrónica, no hacemos esta sincronización, por lo que tan pronto como llega un nuevo cuadro del cliente, se actualiza inmediatamente, lo que causa rupturas visuales conocidas como desgarro en una o varias filas de la pantalla.
Ventajas y desventajas del tearing
Ahora bien, el desgarro no es siempre tan malo como en este ejemplo extremo, y puede mitigarse mediante varios factores en la aplicación. Además, simplemente acercar la tasa de cuadros a la tasa de actualización de la pantalla reducirá mucho el desgarro.
Mientras que muchos usuarios encuentran el desgarro completamente indeseable y nunca quieren verlo, hay otros, como yo, que preferimos este estilo de renderizado asíncrono por los enormes beneficios que ofrece al jugar. Porque en muchos casos, VSSync puede introducir entrecortes, ya sea porque la tasa de cuadros es demasiado baja y tiene que repetir el cuadro anterior, o porque es demasiado Alta y tiene que omitir cuadros.
La opinión de la comunidad
Sin embargo, no todos han estado de acuerdo con esta propuesta. Algunos desarrolladores creen que el desgarro no es realmente necesario, incluso para los juegos, y que el enfoque debería estar en mejorar la latencia en los casos sin desgarro.
Otros, en cambio, defienden que el desgarro es útil cuando al menos la mitad del cuadro es nuevo, ya que puede reducir la latencia en juegos rápidos. Pero en general, la mayor discrepancia ha sido entre los desarrolladores que quieren perfección y los usuarios que prefieren la opción de tener desgarro.
El futuro del juego en Wayland
A pesar de la controversia, este protocolo de desgarro está cada vez más cerca de estar listo para los usuarios finales. Todavía quedan algunos desafíos técnicos, como la integración con los diferentes compositors, pero se espera que 2023 sea el año en que el juego se vuelva viable en Wayland.
Así que, ¿ya juegas en Wayland? ¿O prefieres seguir usando X11 hasta que muera? Me encantaría saber tu opinión al respecto.
Preguntas frecuentes
¿Es realmente necesario el desgarro para los juegos?
Hay opiniones encontradas al respecto. Algunos creen que el desgarro no es tan necesario, mientras que otros defienden que puede reducir la latencia en juegos rápidos. En última instancia, es una decisión que debe tomar el usuario.
¿Cuáles son las ventajas y desventajas del desgarro?
Las ventajas del desgarro son una menor latencia y una experiencia más fluida, especialmente en juegos de acción rápida. Las desventajas son que algunos usuarios lo pueden encontrar molesto y distractivo.
¿Cuándo estará listo el soporte para juegos en Wayland?
Se espera que durante 2023 el soporte para juegos en Wayland esté mucho más avanzado, a medida que se vayan integrando los cambios necesarios en el kernel, Mesa y los diferentes compositors.
¿Qué opciones tengo si quiero jugar en Wayland?
De momento, tu mejor opción es esperar a que el soporte para juegos en Wayland mejore a lo largo de 2023. Mientras tanto, puedes seguir usando X11 si el desgarro te molesta.