Conecta con nosotros

Noticias

El trazado de rayos llega a Super Nintendo, gracias al chip SuperRT

Publicado

el

Trazado de rayos en Super Nintendo

Como sabrán muchos de nuestros lectores, el trazado de rayos no es una tecnología nueva. No se trata de algo que se inventó hace un par de años, de hecho en su concepción más primitiva, y más alejada del ámbito tecnológico, podemos decir que es una idea que tiene siglos de antigüedad.

Si asociamos el trazado de rayos al ámbito tecnológico, tenemos que remontarnos a los años ochenta. Con el paso del tiempo, su utilización ha adquirido una gran popularidad, pero su aplicación al mundo de los videojuegos no había sido realmente posible por el alto coste que representa en materia de potencia bruta cuando se genera en tiempo real, una situación que NVIDIA cambió en 2018 con la arquitectura Turing y la serie RTX 20.

Es evidente que, todavía hoy, el trazado de rayos tiene mucho camino que recorrer en el mundo de los videojuegos, y que tenemos renderizado híbrido (rasterización a nivel general y trazado de rayos aplicado de forma limitada y específica) para varios años, pero títulos como Quake 2 RTX, que soporta trazado de rayos vía Vulkan, y el recién estrenado Cyberpunk 2077, han confirmado que esta tecnología tiene un enorme potencial, y que está llamada a marcar la evolución del sector durante los próximos años.

¿Por qué es tan complejo el trazado de rayos?

Su enorme complejidad reside en su propia naturaleza. El trazado de rayos permite recrear de forma realista el comportamiento de la luz en diferentes superficies, y gracias a ello es posible conseguir efectos de iluminación, reflejos y sombras fotorrealistas.

Para entender mejor lo que hay detrás del trazado de rayos, debemos conocer cómo se genera un fotograma utilizando dicha tecnología, y qué elementos pueden afectar al resultado final (y al rendimiento). No quiero extenderme mucho, así que os dejo una explicación simplificada:

  1. Lo primero es generar la geometría de la escena. Cuanto más compleja sea, mayor carga de trabajo representa a la hora de generar el trazado de rayos, ya que habrá más elementos con los que tendrán que interactuar.
  2. El siguiente paso es trazar los rayos que seguirán un patrón de acierto o de fallo sobre la geometría. Cuantos más rayos se tracen, más realista serán los reflejos, efectos de luz y las sombras, pero mayor será la carga de trabajo. Se realiza en los núcleos RT (RTX 20 y RTX 30), en el caso de NVIDIA, y en las unidades de computación en el caso de las RX 6000 de AMD.
  3. Ahora toca aplicar el color y el sombreado a toda la escena, teniendo en cuenta esos cálculos de acierto o de fallo que se realizaron en el paso anterior. A mayor calidad de color y de sombreado, mayor impacto en el rendimiento.
  4. Terminamos con un proceso de reducción del ruido, muy importante para evitar acabados borrosos o con una calidad muy baja. Este proceso se apoya en los núcleos tensor de las RTX 20 y superiores.

Cada uno de esos pasos afecta al rendimiento, y requiere de unos milisegundos determinados para completarse. Es importante controlar tanto el consumo de recursos a nivel de potencia bruta como los milisegundos totales para generar cada fotograma, ya que si excedemos el valor máximo no podremos alcanzar tasas razonables de fotogramas por segundo. Por ejemplo, para mantener una media de 60 FPS, contamos con un «presupuesto» de 16,67 milisegundos para renderizar cada fotograma.

Trazado de rayos en Super Nintendo

El trazado de rayos llega a Super Nintendo, ¿cómo ha sido posible?

Pues gracias a un chip conocido como SuperRT, un nombre que representa un claro homenaje al mítico chip SuperFX. Dicho chip cuenta con tres núcleos (procesadores CISC especializados) capaces de paralelizar operaciones a una frecuencia de 50 MHz, trabaja únicamente con trazado de rayos (nada de rasterización), y es capaz de ofrecer una resolución de 200 x 160 píxeles, manteniendo 30 fotogramas por segundo y una profundidad de color final de 256 colores (24 bits a nivel interno).

En el vídeo podemos encontrar toda la información clave de este particular mod, que gira alrededor de una solución de desarrollo DE10-Nano FPGA y de una FPGA Cyclone V. El resultado final es fantástico, a pesar de la baja resolución y de la simplicidad de los modelos, las interacciones de la luz, los reflejos y las sombras, así como las transiciones que se producen, tienen un nivel de realismo espectacular, y se ejecutan con total fluidez.

Para construir la escena, el chip SuperRT utiliza un lenguaje basado en comandos especializados que se especializado que es ejecutado por uno de los tres núcleos CISC, especializados en pruebas de intersección «acierto-fallo». De esa manera se realiza una descripción de la escena que el sistema puede interpretar, y que utiliza para aplicar, posteriormente, un subconjunto de operaciones CSG con esferas y bloques básicos. El siguiente paso implica realizar operaciones de «sumar-restar» para dar forma a la geometría que forma la escena con trazado de rayos de forma «nativa».

Creo que este mod tendría mucho potencial para desarrollar, y reinterpretar, juegos retro con trazado de rayos en plataformas muy modestas. Pensad, por ejemplo, en una revisión de DOOM para Super Nintendo que utilice esta tecnología, podría ser impresionante.

Editor de la publicación on-line líder en audiencia dentro de la información tecnológica para profesionales. Al día de todas las tecnologías que pueden marcar tendencia en la industria.

Lo más leído