El trazado de rayos es una tecnología que procede de la generación de gráficos por computadora a finales de los 80 y que rápidamente se empezó a imponer en la creación de efectos especiales por la calidad de los resultados. El problema fundamental que tiene es que el color de cada píxel que se muestra por pantalla se basa en los puntos de luz de la escena y rebotes de rayos sobre más o menos superficies en función de la potencia y complejidad que se quiera, por lo que se necesita mucha potencia de cómputo para calcular todos los rebotes de los rayos.

Pero esta tecnología va a aterrizar en las próximas GeForce como tecnología de trazado de rayos en tiempo real, y es algo que está confirmado por Nvidia. Por lo que titulares de hoy como La próxima generación de GPUs de Nvidia sería compatible con Raytracing que generan dudas de su llegada son un poco idiotas porque, como digo, el trazado de rayos va a llegar a la próxima generación de tarjetas gráficas de Nvidia, la serie 11, es un hecho, no una posibilidad.

Llegará implementado a través de una extensión de la biblioteca gráfica DirectX 12, y Nvidia lo llama RTX. Como he comentado en anteriores ocasiones, las compañías de videojuegos van a implementar parcialmente el trazado de rayos para generar ciertos efectos, como humo o rayos de sol en superficies, y no para generar una escena entera por temas de complejidad y de potencia. Pero es un buen comienzo para esta tecnología que revolucionará los gráficos de los videojuegos en el futuro cercano, desplazando al actual sistema de rasterización con el que se generan.

Además de usarlo para generar efectos como primer paso a crear escenas enteras, Nvidia ha creado un documento científico o paper donde explora el uso del trazado de rayos en el suavizado de bordes.[1] Se trata de una versión del suavizado temporal (TAA) añadiendo una capacidad de adaptabilidad, lo que lleva a denominarlo suavizado temporal adaptativo (ATAA), con la creación de una máscara sobre lo que se quiere realizar el suavizado de bordes, y después calculando un rayo de sombra por fuente de luz y por rayo primario de la escena.

Como he dicho antes, cada píxel que se muestra en pantalla es, por decirlo así, un rayo incidente con la información de todos los demás rayos, y la máscara usada para el suavizado limita el número de píxeles para los que hay que calcular las incidencias y rebotes de los rayos. Según el documento de Nvidia, el uso de este sistema de suavizado a x8 entra dentro de los 33 ms de tiempo asignado por fotograma en un sistema a 30 FPS. Si se quiere funcionar a 60 FPS (16 ms por fotograma), se puede conseguir con un ATAA x2 o x4. Este tipo de suavizado llegará a través de los controladores de Nvidia.

Las pruebas se han hecho sobre una Titan V utilizando el motor gráfico Unreal Engine 4.

m8e6btgiqh1ik6er.jpg

Vía: TechPowerUp.

Referencias

  1. Adaptive Temporal Antialiasing, Nvidia.