Llegó con Turing, pero lo cierto es que NVIDIA trabajó en el Ray Tracing más de 7 años antes de traerlo a GeForce. Tras el lanzamiento de las RTX 2000, NVIDIA ha estado perfeccionando esta el Ray Tracing y te decimos qué es, por qué consume muchos recursos y cómo da un toque de realismo a los videojuegos.
No llegaría al mercado sin una viabilidad mínima, por lo que NVIDIA lanzó DLSS para poder ofrecer a los jugadores una experiencia Ray Tracing en los videojuegos. Toda novedad comienza con fallos, pero «El equipo verde» se ha redimido con Ampere y las famosas RTX 3000, ofreciendo una experiencia Ray Tracing en 2K y en 4K a más de 60 FPS. Así que, repasamos qué es esta tecnología que ha terminado adoptando AMD Radeon también.
Índice de contenidos
Hasta ahora, se ha seguido usando la rasterización para renderizar gráficos en PCs, una técnica que convierte gráficos 3D en píxeles 2D. El problema es que requiere sombreadores (shaders) para reproducir una iluminación realista.
Por tanto, la rasterización es la tecnología de renderizado usada en como alternativa donde los objetos que están en pantalla son creados a partir de una malla de miles de polígonos virtuales. Con la combinación de diversas tecnologías como la oclusión ambiental o los shaders, la iluminación y las sombras se suelen calcular en base al ángulo entre los vértices de cada polígono y la fuente de luz.
Este método permite a la GPU trabajar más rápido que el Ray Tracing, pero solo hay que ver las diferencias entre ambas tecnologías para decantarnos por la segunda.
El Ray Tracing es una técnica de renderizado basada en el trazado de una gran cantidad de rayos desde distintas fuentes de luz, calculando y analizando los rebotes de cada rayo sobre los distintos objetos. Su objetivo es obtener una iluminación lo más realista posible para crear modelos 3D creíbles, buscando una iluminación acorde a la realidad.
Nosotros somos proclives a mostrar las definiciones que dan las marcas primero, os mostramos la definición de NVIDIA:
El Ray Tracing proporciona una iluminación realista al simular el comportamiento físico de la luz. Calcula el color de los píxeles trazando el camino que tomaría la luz si viajara desde el ojo del espectador a través de la escena virtual en 3D. A medida que atraviesa la escena, la luz puede reflejarse de un objeto a otro, ser bloqueada por objetos y atravesar otros transparentes o semitransparentes.
Todas las interacciones se combinan para producir el color final de un píxel que se muestra finalmente en la pantalla.
Para lograrlo, la tarjeta gráfica tiene que hacer millones de cálculos complejos para conseguir que el recorrido seguido por la luz sea preciso y, a nuestros ojos, realista. NVIDIA anunció el Ray Tracing de la gama GeForce en la Gamescom de 2018.
En la práctica, el Ray Tracing ofrece unas sombras y reflejos más realistas, pero todo ello a costa de sacrificar algo: potencia gráfica. El problema está en que se requiere cierto «músculo» para poder disfrutar de una experiencia tan realista, algo que en NVIDIA se ha hecho notar y por ello incrementaron los CUDA Cores, RT Cores y Tensor Cores en las RTX 3000.
Esta no es una tecnología precisamente nueva, sino que se conoció por primera vez en 1979, presentada por Turner Whitted. De hecho, está ampliamente usada en todo tipo de vídeos y fotografías renderizados en 3D. Para que os hagáis una idea, cada película de hoy en día que use imágenes por ordenador, especialmente las más realistas, usan Ray Tracing.
Tenemos, desde renderizados bastante básicos como el que te mostramos aquí arriba, hasta básicamente cualquier superproducción de Hollywood que te puedas imaginar, donde apenas se distingue lo que se genera por ordenador de lo que no.
Hablamos de rayos, pero no los que proceden de las nubes, por lo que cabe preguntarse, ¿qué es un rayo? Eric Haines lo definía en el vídeo de la siguiente manera:
Un rayo (ray) es definido por 2 cosas:
- Tiene un origen en algún punto del espacio (XYZ)
- Una dirección.
El Ray Casting se basa en la idea de coger ese rayo y dispararlo en esa dirección para ver en lo que impacta. Esto no es un algoritmo de renderizado, es una herramienta dentro de una «caja de herramientas» que puedes usar para renderizar. También se puede usar el Ray Casting entre 2 puntos. Este es el primer uso del Ray Tracing en una forma computacional.
¿Por qué no se usa el Ray Tracing en tiempo real en juegos? Porque el renderizado de una sola fotografía haciendo uso de Ray Tracing podría tardar minutos u horas; en cambio, para una película se usan gigantescas granjas de renderizado que probablemente cuesten millones y tarden horas o días en completar uno de estos procesos. Al menos hasta ahora, no era asumible hacer uso de ella en videojuegos.
La implementación del Ray Tracing en tiempo real que NVIDIA ha introducido recientemente presumiendo de su carácter de pionera y calificada como el ‘santo grial de los gráficos por ordenador‘. La peculiaridad de la implementación es el uso de hardware exclusivo para el Ray Tracing como son los RT Cores, los cuales a su vez estarán acelerados por Tensor Cores (a través del DLSS), estos últimos dedicados a optimizar el proceso mediante inteligencia artificial.
Según NVIDIA, de esta forma se consigue que una sola tarjeta gráfica RTX pueda realizar este tipo de operaciones en tiempo real con un rendimiento similar al del superordenador DGX, que tiene un coste de 60.000 dólares.
El Ray Tracing en tiempo real de NVIDIA presenta el inconveniente de que no se emplea la tecnología de forma completa, es decir, no se calcula un número de rayos tan grande como en los renderizados más fotorrealistas. Podríamos llamarlo un «ray tracing parcial» porque se limita a realizar los cálculos más relevantes para iluminar la escena.
Entonces, el salto visual no es tan grande como lo que se ve en algunas fotografías o en películas. En todo caso, una imagen vale más que mil palabras, y os dejamos aquí un vídeo del resultado del Ray Tracing
Aquí os dejamos un vídeo de muestra con el juego de nueva generación, Control, con y sin Ray Tracing activado.
Hasta que AMD no lanzó sus RX 6000, no supimos realmente lo importante que era NVIDIA DLSS en el Ray Tracing. Esta tecnología permite aumentar hasta 50 FPS más gracias al uso de la Inteligencia Artificial y el Deep Learning, una tarea completamente copada por los Tensor Cores de las GPUs NVIDIA.
¿Qué es NVIDIA DLSS? Se trata de una tecnología de reescalado que consigue aumentar los FPS gracias a que la GPU renderiza un frame a una resolución más pequeña y sube la escala a al resolución de salida más grande. De esta manera, la GPU trabaja menos porque renderiza una textura a menor escala de la de salida. Por ejemplo, si jugamos a 1440p y activamos Ray Tracing con DLSS, la GPU renderizará los frames a 1080p o 720p y los reescalará a 1440p.
El problema de ello es la pérdida de calidad de imagen que conlleva esta práctica, pero NVIDIA ha trabajado duro en ello y es prácticamente inapreciable en la gran mayoría de juegos. Otro problema es su soporte: el juego debe soportarlo, si no es imposible usarlo.
Al principio, DLSS solo funcionaba a partir de 1440p, por lo que no se podía activar en 1080p (la resolución más jugada en dicho momento). Pronto se dio cuenta de la cantidad de gamers que se quedaron fuera del disfrute de esta tecnología, y NVIDIA lanzó DLSS 2.0 con soporte para 1080p.
Aprovechó esta actualización para incorporar 3 modos:
Toda la nueva tecnología tiene sus fallos, y la versión 2.0 trajo conflictos con el anti-aliasign MSSA o TSAA en varios juegos, pero fueron corregidos. En definitiva, para poder usar NVIDIA DLSS necesitaremos:
No hace falta usar Ray Tracing para activar DLSS, por lo que NVIDIA ha estado trabajando en la implementación de esta tecnología en los videojuegos. Aquí he de decir que NVIDIA lo ha hecho genial y hay un gran catálogo de videojuegos con esta opción activable.
La alternativa de AMD se denomina FidelityFX Super Resolution, la cual fue presentada a finales de junio de 2021 y que salió con los mismos problemas iniciales de DLSS:
Ya hay una cierta cantidad de juegos que soportan Ray Tracing, pero lo cierto es que su implementación ha sido más lenta de lo previsto. Las primeras tarjetas gráficas se lanzaron en 2018, las RTX 2000, que no podían ofrecer una experiencia Ray Tracing a 4K y más de 60 FPS.
Parece que en NVIDIA se dieron cuenta de que sus GeForce todavía no estaban preparadas para ofrecer un rendimiento brutal bajo este escenario, por lo que no se esforzaron mucho en que salieran videojuegos con dicho soporte, o al menos eso parece. Encima, había que partir de una RTX 2060 Super para disfrutar de una experiencia Ray Tracing decente.
Puede que el verdadero motivo estuviese en que los estudios no apostaron inicialmente por esta tecnología, debido al sacrificio de FPS que suponía y a los pocos resultados iniciales. Lo cierto es que, desde la salida de Ampere hay más videojuegos con Ray Tracing que nunca.
También hay que valorar que AMD no ofrecía GPUs con Ray Tracing, por lo que los desarrolladores que apostaban por esta tecnología se enfocaban directamente a NVIDIA. De hecho, la misma AMD criticó esta tecnología y, al final, ha optado por ella en sus Radeon RX 6000, como en los SoC de PS5 y Xbox Series S/X.
Los primeros juegos en ofrecer este soporte fueron Shadow of the Tomb Raider, Battlefield V o Wolfestein Youngblood, a los que luego se sumaron Metro Exodus, Cyberpunk 2077, Call Of Duty Modern Warfare, Control, Watch Dogs, Minecraft, Fornite o World of Warcraft: Shadowlands entre otros.
Al principio, los juegos no iban muy bien optimizados, como es el caso del Battlefield V; de hecho, a día de hoy, sigue siendo un título en el que cuesta sacar FPS.
La respuesta es sí. Tengo que decir que yo era escéptico a esta tecnología porque veía que las principales desarrolladoras no apostaban por ello (quizás porque las herramientas RTX son de código cerrado).
Sin embargo, después de ver que AMD está apostando por ello y trabajando duro en el desarrollo de FSR, así como la apuesta de Sony y Microsoft por las consolas next-gen, me ha hecho cambiar de opinión. Además, había una barrera que NVIDIA ha conseguido saltar: aumentar los FPS para hacerlo viable.
Échale un vistazo al futuro de los gráficos computacionales para conocer lo que está por venir.
Con la llegada de Ampere, jugar en Ray Tracing a 1080p con todo Ultra es más que posible. Es más, os diría que incluso en 1440p se pueden alcanzar 100 FPS constantes en ciertos juegos, aunque ya sabemos que Cyberpunk 2077, Battlefield V o Metro Exodus nos lo van a poner difícil.
Te recomendamos las mejores tarjetas gráficas del mercado
Si te estás preguntando si merece la pena comprar una GPU con Ray Tracing (sea de NVIDIA o AMD), la respuesta es que sí, merece la pena. Podéis ver nuestro artículo de cómo usar ray tracing en gráficas AMD.
Lo que está claro, que el Ray Tracing está aquí para quedarse porque es parte de la API DirectX 12 y cada vez más juegos lo implementarán. ¿Qué os parece esta tecnología? ¿Os convence?