Si tienes una GPU NVIDIA podrás ver mejor los juegos en tu PC

Una de las apuestas de NVIDIA con sus tarjetas gráficas ha sido el hecho de orientarlas más allá del mercado de los videojuegos. Si la apuesta por la computación dio sus frutos hace unos años y benefició a los videojuegos en PC, a día de hoy es el mundo de la IA el que está trayendo beneficios como el DLSS y en especial su variante, el DLAA.

A la hora de generar una escena en 3D a tiempo real las tarjetas gráfica de nuestro PC técnicamente proyecta una escena en 3D a una pantalla compuesta por bloques muy minúsculos llamados píxeles, siendo la consecuencia de ello que las líneas diagonales son dibujadas como bloques en escalera, provocando con ello el efecto de los dientes de sierra.

Dientes Sierra

La forma más sencilla de resolverlo es aumentar la resolución de renderizado de la imagen, pero esto requiere una alta potencia por parte de la GPU y es por ello que se acaban utilizando desde los inicios de los tiempos métodos de Anti-Aliasing con tal de reducir este artefacto gráfico que es altamente molesto incluso a día de hoy. Por lo que los diferentes videojuegos en la actualidad siguen utilizando este tipo de técnicas para solventar este problema.

El Temporal Anti-Aliasing

TAA

Para poder entender el DLAA antes tenemos que comprender cómo trabaja el Temporal Anti-Aliasing o TAA dado que evoluciona de este. ¿Y cómo funciona? Pues de manera muy similar a la interpolación de texturas, pero solo para las líneas que sufren el problema del dentado. Para ello buscan los valores de color de los píxeles cercanos y buscan que se cree una transición que hace que la línea afectada se vea más suave y con ello hace desaparecer los dientes de sierra, al menos aparentemente.

El problema es que hacer esto solo con la información del fotograma actual es poco preciso y por eso se hace servir la del anterior fotograma, donde para ello se usa un búfer temporal, el cual consiste en darle una ID a cada objeto en pantalla que luego le servirá a la GPU para saber la velocidad y el movimiento de cada uno de ellos. También se necesita poder extraer información de fotogramas anteriores para realizar el proceso de Anti-Aliasing de manera más precisa.

Por lo que el Temporal Anti-Aliasing es la forma más eficiente de evitar los dientes de sierra hasta el momento, pero NVIDIA le ha querido dar una vuelta de tuerca con el DLAA.

¿Qué es el DLAA de NVIDIA?

NVIDIA DLAA

Como el nombre indica, DLAA es Anti-Aliasing a través de aprendizaje profundo, el cual hace uso de las capacidades avanzadas para estos algoritmos que otorgan los Tensor Cores de las tarjetas gráficas para gaming RTX 2000 y RTX 3000.

La primera ventaja es la capacidad para reconocer que píxeles han cambiado de un fotograma a otro, de tal manera que la GPU pierde menos tiempo realizando un algoritmo equivalente al TAA. Esto se traduce en menos milisegundos para generar un fotograma con la misma calidad y por tanto una mayor tasa de FPS en los juegos. Algo en lo que es similar al DLSS, aunque tiene sus diferencias como veremos más adelante.

Pero la mayor ventaja del DLAA es el hecho de que al ser un algoritmo de aprendizaje profundo puede ser entrenado para que vea matices en imágenes con un anti-aliasing de mayor calidad. Si en el DLSS entrenamos al algoritmo con imágenes a mayor resolución, con el DLAA se entrena la GPU con técnicas de eliminación de dientes de sierra que el algoritmo aprende a observar para luego aplicar vía DLAA con una fracción de la potencia necesaria.

DLAA deriva del DLSS, pero no es lo mismo

NVIDIA DLAA TAA DLSS comparativa

La gran diferencia entre el DLSS y el DLAA es que el segundo no está pensado para generar imágenes a mayor resolución, sino que mantiene la resolución respecto a la muestra original y se basa en mejorar la calidad de imagen del mismo. Por el momento el DLAA no se ha aplicado en muchos juegos y está totalmente verde, pero no todos los juegos requieren aumentar la resolución y para muchos usuarios es preferible la calidad de imagen antes que la resolución.

La pregunta aquí sería: ¿qué prefieres, más píxeles o píxeles más «bonitos»? Muchos juegos hacen uso de técnicas de postprocesado de imagen que se basan en coger el búfer final antes de enviarlo al monitor y añadir una serie de filtros y técnicas gráficas. El DLAA puede aprender de la existencia de estos y aplicarlos para mejorar el aspecto de la imagen final que vemos en el monitor.

Los efectos de post-procesado a día de hoy se realizan en los juegos a través de los Compute Shaders, pero en programas de diseño gráfico y edición de vídeo hace tiempo que se utilizan algoritmos de aprendizaje profundo. El Anti-Aliasing es un efecto de post-procesado y por tanto no es sorprendente que NVIDIA haya desarrollado está técnica.

El DLAA requiere entrenamiento

NVIDIA DLAA 2018

Al ser un algoritmo de aprendizaje profundo el sistema ha de aprender una serie de patrones visuales de cada juego para realizar la inferencia y aplicar el DLAA de manera correcta. No olvidemos que cada videojuego tiene su propio estilo visual y la aplicación de un mismo algoritmo de inferencia para todos los juegos puede provocar problemas a nivel visual más grandes que los que permite solucionar.

No obstante la mayoría de juegos tienen una serie de problemas visuales comunes que el DLAA podría resolver a base de aprender a localizarlos y solucionarlos. En ese caso el algoritmo no aprendería a copiar el aspecto visual, sino a corregir dichos errores heredados por el uso de ciertas técnicas gráficas, siendo este una de las ventajas del entrenamiento.

La segunda ventaja es la enorme potencia de cálculo de los Tensor Cores, que es casi una orden de magnitud frente a las ALU SIMD o núcleos CUDA, por lo que la velocidad a la que se resuelven este tipo de algoritmos es muy rápida y como hemos dicho antes la idea es conseguir la mayor calidad de imagen y tasa de fotogramas al mismo tiempo.

¡Sé el primero en comentar!