La tecnología Ray-tracing en tiempo real parece ser el futuro del Archviz y del sector CG en general. Hasta ahora, el método de trazado de rayos para el cálculo de la luz, reflexiones, etc. ha estado implantado desde hace ya tiempo en motores de render estáticos como pueden ser V-Ray o Corona. Sin embargo, los desarrolladores de Nvidia, han ido un paso más allá y han dado con un sistema en el que poder utilizar esta tecnología en tiempo real.

¿Qué es el Ray-tracing?

El Ray-tracing es un sistema de cálculo de luz para la creación de imágenes por ordenador. El sistema de lanzamiento de rayos se basa en las leyes de la óptica, es decir, en cómo funciona la luz en el mundo real. Resumiendolo mucho, la luz emite fotones que chocan contra las superficies de los objetos de alrededor y rebotan hasta llegar a nuestros ojos, o en este caso, una cámara, dándonos información sobre el color del objeto, la reflexión, refracción, relieve, etc.

Bien, pues el Ray-tracing se basa en imitar estos principios, para crear imágenes fotorrealistas por ordenador. Como he mencionado anteriormente, motores de render conocidos como V-ray o Corona llevan años usando esta técnica de iluminación y han sido usados para la creación de imágenes realistas. Pero miremos un poco más hacia el pasado.

Pixar

En el mundo del 3D, esto ya fué una revolución en 1996, cuando Pixar estrenó la primera película de animación hecha en 3D: Toy Story. Nunca antes se había visto un largometraje hecho por ordenador con un look tan ‘realista’, gracias a Renderman, su propio motor de render. Sin embargo el Ray-tracing como lo conocemos hoy en día no estuvo presente en la producción del film. Muchos elementos tuvieron que ser ‘fakeados’, así como sombras, reflexiones y demás, utilizando otros métodos como el de los mapeados.

En realidad no fué hasta que lanzaron ‘Monstruos University’ que Pixar utilizó al completo el Ray-tracing en una de sus películas. Algunos de los artistas que implantaron esta técnica no estaban seguros de si el espectador iba a ser capaz de distinguirla de las técnicas anteriores. Resultó que a pesar de no saber el por qué, la gente supo que todo se veía más compacto, que había algo diferente y en definitiva, que la iluminación era más atractiva y fiel a la realidad.

A pesar de estar hablando de Pixar, hay que decir que el Ray-tracing, o por lo menos su algoritmo, se utilizó anteriormente por Arthur Appel en 1968. Lo llamó Ray-casting y formaría una de las bases para programar los software de 3D y renderizado de la época.

Real time Ray-tracing

Pero si el Ray-tracing ya se ha usado anteriormente como acabamos de ver, ¿Por qué es novedad? ¿Qué lo hace tan especial en 2019?

Cuando usamos esta tecnología, estamos sometiendo al ordenador a un proceso de cálculo inmenso, ya que tiene que trazar el recorrido de todos y cada uno de los fotones que interactúan con los objetos de la imagen. Por lo tanto, esto significa que nos va a llevar un tiempo, y es precisamente lo que pasa cuando renderizamos una imagen; necesitamos tiempo. Más recientemente, estos tiempos de espera son cada vez menores, y ese es precisamente el objetivo del Ray-tracing en tiempo real: poder calcular una secuencia de imágenes lo más rapido posible.

Para poder lograr eso, necesitaríamos 24, 30 o 60 imágenes renderizadas por segundo, dependiendo de la velocidad de fotogramas a la que queramos esa secuencia de imágenes. A pesar de parecer algo imposible hoy en día, la tecnología va dando pasos en esa dirección, y empresas como Nvidia y Epic Games están trabajando duramente en ello. En la penúltima versión de Unreal Engine (4.22), ya han implementado el uso del Ray-tracing en tiempo real, de manera que podemos calcular luz indirecta o iluminación global (GI), reflejos, etc. en tiempo real. Para ello, eso si, necesitaremos una tarjeta gráfica lo suficientemente potente para llevar a cabo esos cálculos de los que hablábamos anteriormente (Nvidia RTX series).

Sin embargo, es una tecnología muy joven a la que le queda aún mucho por crecer. La iluminación global sigue siendo demasiado lenta en calcularse como para ser en tiempo real, aparece con demasiado ruido a pesar del ‘denoiser’ que utiliza. Eso sí, los reflejos en tiempo real son sorprendentemente avanzados, y el hecho de poder usar Ray-tracing por primera vez en un software como Unreal Engine es un gran avance.

Infinitas posibilidades

Visto lo visto, es evidente que las aplicaciones que esta tecnología tendrá en un futuro no muy lejano y que incluso está teniendo hoy en día son infinitas.

La industria de los videojuegos principalmente se verá indudablemente afectada al poder ofrecer nuevos juegos mucho más realistas en cuanto a iluminación se refiere. En la visualización arquitectónica, más de lo mismo. Con el tiempo no haran falta más mapeados de luz o lightmaps, ni mapeados para los reflejos, lo cual hará las secuencias, imágenes y recorridos virtuales mucho más creíbles y afines a la realidad. El usuario disfrutará de una mayor sensación aún de inmersión y entendimiento del espacio (por no hablar del tiempo que ahorrarán los desarrolladores al no tener que calcular los lightmaps).

En conclusión, solo hace falta tiempo para ver adonde nos dirige esta nueva ciencia y todo lo que ello conlleva.

Referencias:

Inhar Endaya

Author Inhar Endaya

More posts by Inhar Endaya

Join the discussion One Comment

Leave a Reply

All rights reserved Salient.