Introducción
RTX son unas siglas que los aficionados a los videojuegos en general llevamos mucho durante los últimos años. Los fabricantes de tarjetas gráficas para PC primero, y los fabricantes de consolas de última generación después, nos la han metido por los ojos como si se tratase del mayor salto cualitativo en calidad gráfica que existe desde el salto de las 2D a las 3D, y puede que tengan razón al menos en parte, pero también hay que tener en cuenta que acarrea enormes problemas en muchos aspectos. Es algo que llevamos viendo desde que en 2018 se comenzase a hablar de esta tecnología y desde que en 2019 viéramos en el mercado las primeras tarjetas gráficas con ella implementada.
En pleno 2021, esta tecnología se sigue resistiendo a convertirse en algo normal y un estándar, y nosotros queremos aportar nuestro granito de arena explicando qué es, cuáles son sus principales problemas, y por qué vamos a tardar aún un tiempo en verlas extendidas en la inmensa mayoría de videojuegos. Lo primero que vamos a decir es que este artículo pretende ser un artículo de opinión sobre algo bastante complejo, y que por ello vamos a tratar de explicarlo de forma sencilla para que todos lo podamos entender perfectamente, y después los más interesados podáis ampliar vuestros conocimientos en cualquier parte, vídeos de Youtube, Wikipedia o cualquier sitio de expertos en gráficos. Dicho esto...
Primeras implementaciones en videojuegos: el raycasting
Hacemos un poco de historia (breve), y decimos que esta tecnología no es nada nuevo ni actual. Mientras que Wikipedia te dice que es algo que lleva existiendo desde mediados del siglo XVI (no vamos a ser tan pomposos para ponerlo así), las primeras aproximaciones que vimos en ordenadores
llegaron a principios de los años 80 como lo que son, un conjunto de algoritmos matemático que intenta calcular lo que se ve en una escena en base a
una simulación de un punto concreto, su entorno y lo que le afecta en cada momento y a cada uno. Este tipo de algoritmos era muy complejo, y no podíamos verlo en ninguna parte en tiempo real, pero sí que se comenzaron a usar en programas de render (3D Studio, POV...) a mediados de los 80 para hacer escenas e imágenes 3D, y requería muchas horas (días y semanas incluso) en tener una imagen lista, no digamos una animación más compleja.
Sin embargo, a finales de los años 80, a un genio que se dedicaba a la programación de videojuegos se le ocurrió utilizar una técnica similar pero mucho más sencilla para intentar simular un juego en 3D con la potencia de los ordenadores de la época (finales de los 80, hablamos de los 8086).
El genio se llama John Carmack y el juego que consiguió utilizando esta técnica se llama Wolfenstein 3D. La idea es (a priori) muy sencilla: Imaginad que cogéis una hoja de cuadritos de toda la vida, y que pintáis un mapa, subrayando cada pared y puerta en línea recta siguiendo los recuadros del folio. A continuación, pintáis un número en cada una de estas líneas definiendo qué tipo de pared o puerta es, muro de ladrillos rojos, ladrillos rojos con un cuadro, ladrillos azules, puertas de madera, puertas metálicas...
Una vez hecho esto, empieza la magia de las matemáticas. Carmack pensó que podría simular una perspectiva en primera persona (como cualquiera de los FPS actuales por ejemplo) con este mapa pintado en 2D (un folio). La idea era situar al jugador como si fuese un punto concreto del mapa (repito, en dos dimensiones) y, desde éste,
pintar una línea recta imaginaria que va desde él hasta que toca uno de estos muros, objetos, enemigos, o puerta, y de esta forma se sabe qué está viendo en cada momento. Si los monitores de la época tenían una resolución de 320x200 (o 640x480 los más grandes), quiere decir que tendríamos que lanzar 320 líneas imaginarias (todo el ancho de la pantalla) para pintar una columna por cada una de ellas, y cada una representa lo que dicha línea recta hubiese tocado en el mapa. Para simplificar el algoritmo, todas las paredes y puertas tienen siempre la misma altura, y así pintamos en la parte superior el techo y en la inferior el suelo. Si hacemos esta operación un mínimo de veinticuatro veces por segundo (la velocidad con la que el ojo humano ve el movimiento) con todo el ancho de la pantalla (las trescientas veinte líneas), conseguimos que cada vez que el jugador toque alguna tecla, el punto en 2D se mueva (rote o se desplace) y de la sensación de movimiento en primera persona. Así se creó el género de los FPS.
Qué es el RTX, Raytracing o Trazado de rayos
Pues, básicamente, el raytracing es lo mismo que el raycasting pero mucho más complejo, aplicado a objetos, escenarios y texturas, además de tener en cuenta los efectos que cada uno tenga. A la hora de mostrar un objeto en pantalla, la tarjeta gráfica se encarga de colocarlo (pintarlo) en la situación en la que esté, y luego hay que aplicarle los efectos. Dependiendo de la situación en la que esté dicho objeto, estos algoritmos matemáticos calculan qué se ve de dicho objeto (si algo lo tapa, nuestra perspectiva...) y luego cómo se ve teniendo en cuenta si incide sobre él alguna luz o más de una, a qué distancia están (mayor o menor intensidad de la luz), si hay algún otro objeto cercano que le produzca sombra, si la superficie tiene reflejos (espejo, el agua de un lago o el mar...), si hay algún de niebla o algo que lo difumina, y así con todos los tipos de efectos que pueda tener (como, por ejemplo, la oclusión ambiental, esa especie de neblina que se acentúa cuando más lejos está la escena del jugador).
Todo esto se hace, como digo, con una técnica similar a la del raycasting explicada anteriormente, salvo que en lugar de simular una perspectiva en primera persona y lanzar tan poquitos rayos como sería tomando la perspectiva del jugador (320 x 24 cada segundo), con el RTX hay que lanzar tantos rayos como objetos o situaciones diferentes haya en esta escena, por lo que la complejidad se multiplica exponencialmente. Hay que tener en cuenta además que los juegos a día de hoy pueden ir a diferentes resoluciones mucho más elevadas, siendo 1080p la más baja, la resolución dinámica o 1440p la más común, y 4K la más elevada (a 8K no vamos a ver casi nada en esta generación de consolas aunque estas lo permitan). Esa multiplicación aquí sería imposible de hacer y no tendría sentido, pero como ejemplo (por favor, no nos peguéis los que sepáis del tema), a modo de ilustración, diremos que si una única habitación tuviese un único objeto con RTX activo (por ejemplo, un botijo), y que dicho botijo tuviese un número de mil polígonos (es un objeto en 3D), y cada polígono tuviese 1000 píxeles, suponiendo que nos encontramos delante del objeto sin movernos habría que multiplicar 1000x1000x24x1920, siendo 24 la tasa mínima de frames para que el juego fuese fluido y 1920 el ancho de la pantalla mínima, y eso cada segundo. Los juegos de hoy en día van a 30 FPS o a 60 FPS (algunos hasta 120 FPS), por lo que ya sabéis además que sigue aumentando el valor resultante de dicha multiplicación. Es mucho más complejo que eso, porque además hay que tener en cuenta que incluso si la escena tiene un único objeto con RTX activado, para que éste se vea afectado, debe haber al menos algún tipo de fuente de luz que lo afecte, por lo que también afecta a todo el escenario en general, y aunque no haya nada especial en él, hay que multiplicar todo esto por cada objeto del escenario, enemigo, pared...
Aún así, esto ya nos da una idea de cómo se hace teniendo en cuenta que en cualquier juego no solo hay un botijo, puede tener antorchas en las paredes, agua en los charcos, espejos, y cualquier otra fuente de luz que cause sombras, reflejos, refracción y otros efectos gráficos, y con solo moverse el jugador un poquito por dicho escenario haría que todo fuese increíblemente más complejo.
¿Cómo se hacía todo esto antes?
Desde 2019 se está implementando algunos juegos con el RTX, lo que quiere decir que en los juegos anteriores a esta fecha e, incluso, en la inmensa mayoría de los juegos de hoy en día, tienen efectos de luces, sombras, reflejos, y otros efectos gráficos adicionales para hacerlos más realistas, ¿verdad? Dependiendo de la compañía que desarrolla el juego, suelen utilizar algunos engines que ya aplican todos estos de forma automática (como Unreal Engine o Unity por ejemplo), haciéndolo en base a simulaciones o modelos 3D, pero sin llegar a la precisión del RTX. Es fácil ver un juego en el que nos acercamos a, por ejemplo, un espejo, y ver que tienen algo parecido a un reflejo del escenario pero en el que no se ve reflejado el personaje, y el motivo es básicamente que se utilizan otras técnicas que simulan este reflejo, como por ejemplo utilizar texturas en 3D que son varias imágenes superpuestas que simulan la pared que está detrás nuestra, o los árboles y el cielo en un lago, y para conseguirlo se muestra algo similar a una foto de estos que se aplica con transparencia sobre dicho objeto.
Hay cientos de técnicas, algunas en tiempo real y otras simuladas, y se pueden ver juegos realmente bonitos con unos efectos de iluminación y sombras en tiempo real muy buenos desde hace muchos años, como por ejemplo
Destiny 2, que tiene a día de la que consideramos en Ultimagame como la mejor iluminación de un videojuego en tiempo real, y que no utiliza para nada el RTX (ni tan siquiera en las versiones para PS5 y Xbox Series). Y este es el verdadero motivo por el que no vamos a ver esta técnica tan realista y fácil de aplicar hasta que pasen al menos algunos años. ¿El motivo? Hay que trabajar el doble.
Coste de implementar el RTX en los videojuegos actuales
En este sentido también hay mucha ignorancia que lleva a muchos a decir barbaridades como que "
aplicar el RTX es darle a un botón" o "
eso es cosa de días o unas pocas semanas". Básicamente,
el RTX se puede aplicar de diferentes formas, siendo la más habitual a objetos concretos, a texturas concretas, y/o a escenas completas cuando hablamos de efectos de iluminación. No es darle a un botón y tener el RTX activo, sino que los desarrolladores tienen que aplicar un efecto concreto a una textura para que brille, se refleje, emita algún tipo de luz, o tenga algún otro tipo de efecto, y todo ello se tiene que hacer teniendo en cuenta el escenario y lo que hay aplicado en él, como por ejemplo si tiene o no luces globales (una luz que ilumina toda la escena), si hay focos de luces específicos (antorchas, velas, linternas...) y, además, sus diferentes intensidades. Está claro que aplicar RTX es mucho más sencillo que construir una iluminación y diferentes efectos por hacerlo todo en tiempo real, pero eso no quita un gran trabajo por parte de los artistas.
Y es que son ellos, artistas y diseñadores los que deciden qué quieren mostrar. Igual se activa el RTX para un foco de iluminación y toda la escena cambia tan radicalmente que no se parece en nada a lo que sus creativos querían originalmente, o no es lo suficientemente oscuro, no se ve nada, o se ve mucho cerca de él y casi nada en zonas más alejadas. Esto significa que en ocasiones hay que retocar todo el escenario y/o ajustarlo hasta que se parezca a lo que tenían en mente. La implementación, por tanto,
puede y suele ser bastante costosa. mucho menos que la implementación de iluminación y efectos tradicionales pero aún así costosa, y hay que hacerla poquito a poco con todo el juego, decidiendo además a qué objeto concreto se le aplica y cómo, y posteriormente testear todo el conjunto nuevamente para ver que no hay fallos (como ocurre con Metro Exodus, por ejemplo, en especial en la zona final del Mar Seco). Tampoco es lo mismo aplicar RTX en un juego para PC, que si se ralentiza es asunto tuyo porque la compañía no se preocupa en optimizarlo, por lo que eres tú quien tienes que bajar detalle para que te vaya bien y/o comprarte otra tarjeta gráfica. En el caso de las consolas, el juego debe ir a una tasa de frames constante porque existen opciones de configuración, y si no va como debe ir, los desarrolladores deben retocar dicha parte, cambiar cosas o quitarle detalle a la escena, para que siga iendo, como mínimo, a 30 FPS (que suele ser el "modo gráfico" de los juegos a día de hoy.
Por tanto, la estimación de coste en tiempo por parte de las compañías depende mucho del juego y de cómo esté desarrollado, pero por lo que hemos escuchado por parte de algunas compañías,
una implementación de RTX en un juego puede costar, como mínimo, seis meses de desarrollo adicionales, y en los casos que ya conocemos como Metro Exodus o The Witcher III, el coste supera bastante el año.Hay engines que ya permiten implementar dos tipos de efectos a la vez. Por ejemplo, Unreal Engine 4 no permite por defecto RTX aunque sí que hay módulos que lo incluyen, mientras que Unreal Engine 5 sí que lo trae de base. Los desarrolladores de juegos y aplicaciones saben que el coste es ligeramente inferior si se hace desde el principio, pero teniendo en cuenta que un juego suele tardar unos tres años de media en desarrollarse (la mayoría mucho más), y que esta tecnología se está intentando implementar desde 2018, éste es el motivo por el que hasta ahora hay pocos juegos que se haya comenzado a desarrollar desde cero con el RTX en mente.
Para una compañía que está desarrollando un videojuego actualmente, retrasar el lanzamiento de su juego un año de media solo por añadir este tipo de efectos suele ser demasiado, teniendo en cuenta las fechas tan apretadas de entrega que las compañías desarrolladoras suelen tener por parte de las publicadoras, y lo que les cuesta retrasarse especialmente porque suele jorobar la planificación anual de la compañía, lo que supone pérdidas millonarias. El problema no está en que se tarde un año en añadir el RTX, que entraría dentro del desarrollo normal si solo hubiese que hacerlo de esta forma. El problema principal viene porque
las compañías tienen que implementar efectos de todo tipo sin RTX como se ha estado haciendo hasta ahora, porque el número de usuarios de PS5 y Xbox Series es aún muy pequeño, así como el número de usuarios de PC con tarjetas RTX. Si el juego hay que sacarlo para PS4, Xbox One, y PC, hay que hacerlo pensando en el mayor número de usuarios posibles, y después añadirle los "extras".
Alguno ya estará culpando a las consolas por todo ello, y pensando que son un lastre para los usuarios de PC, que se gastan un dineral en tener tarjetas gráficas muy potentes y que se ven influenciadas por los de consolas, pero esto tampoco es cierto del todo. Según la
página de estadísticas de Steam, a mediados de 2021 los usuarios con RTX en PC rondan el 20%, un número realmente pequeño para programar exclusivamente con esta tecnología, y lo que es peor, si el juego es muy demandante a nivel gráfico como suelen serlo los que la utilizan, tenemos que dejar fuera las tarjetas más bajas de la serie 20 y 30 de Nvidia y casi todas las de la RX de AMD, lo que disminuye este número aún más y lo deja rondando el 10%. Hay que tener en cuenta que aunque el juego se pueda ver con estos efectos en, por ejemplo, una RTX 2070 de Nvidia, si queremos jugar a 4K o con detalle a ultracalidad se va a convertir en injugable por culpa de una tasa de frames demasiado baja. Ocurre lo mismo con los usuarios actuales de PS5 (unos seis millones de consolas a día de hoy) y Xbox Series (ronda los cuatro millones) si lo comparamos con los usuarios de PS4 (más de ciento veinte millones) y con los de Xbox One (más de sesenta millones).
Los fabricantes de consolas querían que sus usuarios se pasasen a la nueva generación en 2021 o 2022, pero tanto 2020 como 2021 no han sido años buenos en ventas, por culpa de la pandemia y de la minería de datos que ha hecho que muchos usuarios no puedan actualizarse por no haber ni consolas ni tarjetas que comprar, algo que va a durar hasta bien entrado el 2022 como mínimo, por lo que a ninguna compañía se le va a ocurrir abandonar a este público durante el año actual ni tampoco el año que viene. Ese es el motivo por el que ciertos juegos supuestamente exclusivos para PS5 (God of War: Ragnarok o Gran Turismo 7) se han retrasado y también se lanzan para PS4, ya que no pueden dejar a sus usuarios colgados sin esos juegos si no tienen opción de comprarse una consola nueva. Como estas compañías están usando revisiones de engine de juegos anteriores, el coste en desarrollar el juego para PS4 y PS5 a la vez no va a ser demasiado elevado.
¿Cuándo lo veremos de forma masiva?
Con estos números ya nos podemos hacer una idea de cuándo vamos a ver un uso más intensivo de RTX. Básicamente,
cuando los juegos comiencen a ser exclusivos en PS5 y Xbox Series, momento en el que los desarrolladores comenzarán a plantearse en dejar atrás también al público de PC que no tenga estas tarjetas. Por ejemplo, en pleno 2021 tenemos juegos como The Medium (Xbox Series), Returnal o
Ratchet & Clank: Una dimensión aparte (PS5) que son exclusivos de la nueva generación y que tienen RTX, porque no hay que asumir el coste adicional de programar el juego con dos tipos diferentes de efectos. Aún así, este dato tiene un poco de truco, especialmente en consolas. Se dice que PS5 y Xbox Series han salido con muy poca potencia, y esto no es cierto. El aumento con respecto a la anterior generación ha sido brutal, mucho mayor incluso que entre las anteriores generaciones) y el problema viene por lo que decíamos antes del
enorme coste para poner en pantalla los efectos de RTX, que aumentan enormemente la necesidad de potencia según a lo que le apliquemos, pero suele necesitar un mínimo de entre un 30% y un 50% más de capacidad de proceso que si no le aplicamos estos efectos y utilizamos efectos de forma tradicional.
Y digo que tiene truco porque incluso siendo un juego exclusivo para las nuevas máquinas, las desarrolladoras están implementando (en su mayoría) dos modos de juego, uno con gráficos a 4K y RTX activo que va a unos 30 FPS, y otros sin RTX y resolución dinámica que va a 60 FPS. Esto quiere decir que
incluso siendo un juego exclusivo para la nueva generación, hay que seguir implementando dos modelos diferentes de efectos, lo que significa que hay que seguir contando con ese año y algo adicional de desarrollo, al menos hasta que el engine con los que están desarrollando los juegos de todas estas compañías esté optimizado para aplicar ambas a la vez (más o menos, porque a la vez es casi imposible). Esto es, por ejemplo, lo que está haciendo actualmente CD Projekt RED con el engine del nuevo The Witcher aún no anunciado de forma oficial, optimizando el utilizado en The Witcher III, y de paso sacan un parche para volver a vender el juego en PS5 y Xbox Series con más calidad (o gratuito si ya lo tienes). Lo miso ocurre con Santa Mónica Studio y el nuevo God of War, Ragnarok. Ambas compañías utilizan una evolución del engine usado en el juego anterior y que permitirá los efectos aplicados en ambos modelos, lo que permite poder lanzar juegos para una generación anterior (PC más antiguos o PS4) a la vez sin un coste excesivo de tiempo, aunque ya han tenido que echar dicho año en actualizar los engine (y de ahí que, por ejemplo, Ragnarok se retrasase un año mínimo).
De esta forma,
solo las compañías más grandes, con más recursos económicos y/o de personal, o a las que les de igual retrasar el juego (como ha ocurrido con Cyberpunk 2077 y sus enormes retrasos) son las que pueden lanzar juegos optimizados con RTX, y por ello a día de hoy todavía hay muy pocos juegos que lo usan, y va a tardar al menos un par de años en verse este número muy aumentado. Según Nvidia, fabricante de las tarjetas RTX de la serie 20 y 300 y pionera en esto del RTX,
en junio de 2021 había 130 juegos con RTX activo, lo que supone un número irrisorio teniendo en cuenta la enorme cantidad de juegos que salen al mercado cada año, y que además lleva esta tecnología con nosotros desde hace más de dos años. De hecho, ellos (Nvidia) patrocinan a muchas compañías para que apliquen estos efectos a sus juegos, para posteriormente poder promocionarlos para decir que se juegan mejor con sus tarjetas gráficas.
Nuestra opinión: Un pasito más hacia el fotorrealismo con un coste aún demasiado alto
Cada año que pasa, cada nueva generación de consolas, cada mejora en los engines gráficos, cada nuevo lanzamiento de tarjeta gráfica, nos acercamos un poquito más al fotorrealismo. Gráficos cada vez más reales, físicas más conseguidas, inteligencia artificial más precisa, más personajes y detalle en pantalla... Los efectos son uno de los elementos más importantes a la hora de hacer que un juego se vea más bonito, especialmente los de iluminación, sombras, nieblas, nubes, reflejos, etc. En muchos casos, estos efectos no suponen absolutamente nada al juego y, es más, ni tan siquiera te das cuenta de ellos, por lo que suele ser mejor tenerlos desactivados para disfrutar de una experiencia más fluida. Juegos como Devil May Cry 5 Special Edition tiene un RTX que nos hace vernos reflejados en charcos y cristales, como si en algún momento nos fuésemos a parar quietos para mirarnos en ellos con la cantidad de demonios que hay contra nosotros y la velocidad general del juego. Otros juegos como Metro Exodus aprovechan estos efectos para mostrar una iluminación global más realista y meternos dentro de este fantástico y apocalíptico universo, incluso a 60 FPS en consola.
Cuando veo algunos de estos vídeos, especialmente de PC, comparando con el RTX activado y desactivado, en muchas ocasiones me cuesta trabajo averiguar sin mirar el letrero cuál de las dos versiones se ve mejor, o incluso cuál tiene el RTX activado. Los efectos utilizados de forma más tradicional están tan bien hechos en muchas ocasiones que no tiene el mayor sentido activar RTX si con ello vamos a perder fluidez en los movimientos de los personajes. Esto, por supuesto, depende del juego, pero por ejemplo jugar a cualquier juego de estilo soulsborne a 30 FPS es un auténtico pecado a día de hoy, y es preferible jugarlo a 60 FPS aunque no nos veamos reflejados en un charco. Personalmente siempre voy a elegir el modo rendimiento antes que el modo gráfico, especialmente porque no hay mucha diferencia como digo entre ambos, lo que irá cambiando con el paso del tiempo y conforme las compañías aprendan a usar los nuevos engines (especialmente Unreal Engine 5) y/u optimizar los que ya tienen hechos
in-house.
Para los usuarios de PC pasa algo parecido. La serie 20 de las tarjetas RTX de Nvidia no permite jugar demasiado bien a casi nada con una buena resolución y a una buena tasa de frames si lo activas, y la actual serie 30 sí, pero también depende del juego y de la tarjeta que tengas. Gastarse más de 500 euros solo en una gráfica (se monta el equipo en unos 1.500 euros) para poder jugar con RTX es algo que mola, te hace ser de la master-race, pero te deja sin euros en el banco, y además es así hasta que no salga la Serie 40 de Nvidia (posiblemente a finales de 2022-principios de 2023) que aumente el rendimiento entre un 30% y un 60%, disponga de tecnologías por hardware que no tengan las tarjetas actuales, y te tengas que gastar otros 500 euros para seguir estando el la élite gráfica de los videojuegos o pasar un "ex-master-race". Éste es el principal motivo por el que también se investiga en otras tecnologías como el DLSS, que permite mejorar el rendimiento y acelerar los juegos, y que hace que incluso con el RTX activado se lleguen a tasas de frames muy altas, que se ha empezado a implementar hace unos meses, pero para la que también le queda un tiempo hasta llegar de forma masiva.
Personalmente creo que el RTX es un salto importante a la hora de desarrollar videojuegos, que facilita mucho la labor de hacerlo más realista, y que le da una herramienta tremenda a las compañías, especialmente a los artistas y creativos, para dejar volar su imaginación y meternos en mundos cada vez más complejos. Sin embargo,
el coste en 2021 sigue siendo demasiado elevado como para que merezca la pena hasta, al menos, que las compañías puedan implementarlo sin gastar ese año de tiempo adicional, o sus engines estén tan optimizados para que podamos activarlo, como mínimo, con 60 FPS. Esto no ocurrirá hasta bien entrado el 2022, lo que nos asegura que algunos juegos sí que lo tendrán, pero que serán los próximos de estas compañías los que los aprovecharán de lleno, lo que nos mete en 2023 como mínimo. No es que sea nada malo, pero sí que da pie un poco a los usuarios para plantearse posponer sus posibles compras de tarjetas gráficas y consolas, e incluso posponerlas hasta futuras revisiones de estas (Serie 40 en gráficas para PC, PS5 Pro y Xbox Series XX, triple X o la consola más pornográfica, que pueda poner RTX activo y los 60 FPS o 120 FPS a 4K). El pasito para el futuro se ha dado con la actual generación, pero los usuarios de a pie aún no estamos preparados para disfrutarlo.