Guía Hardware

El futuro de los gráficos computacionales

Actualizado a: 19 de enero de 2024

Los gráficos computacionales han sufrido un gran cambio, una gran evolución desde aquellos primitivos gráficos 2D generados por la propia CPU, hasta los actuales 3D con una arquitectura de GPU especializada. Cada vez más realistas y sofisticados, y todo gracias al avance en el sector de las tarjetas gráficas. Pero… ¿cuál será el futuro que nos espera?

Un poco de historia gráfica

Muchos jóvenes pensarán que los gráficos han sido siempre así, y en 3D. Pero lo cierto es que venimos de unos gráficos muy primitivos 2D de hace décadas hasta llegar a los primeros gráficos 3D que han ido mejorando su renderizado mediante nuevas tecnologías y GPUs cada vez más poderosas hasta lo que actualmente tenemos.

Hemos visto pasar durante las últimas décadas varios estándares de renderizado, como el z-buffer (Wolfgang Straßer, 1974, trabajador en TU Berlin), el sombreado de Gouraud (de Henry Gouraud en 1971), el mapeo de texturas (Edwin Catmull en 1974), mapeo de relieve (Jim Blinn en 1978), etc. Sin embargo, pasaron años hasta poder ver muchos de estos modelos en equipos domésticos.

La evolución de los gráficos por ordenador ha sido un viaje fascinante desde los primeros días de la informática hasta nuestros tiempos modernos, donde los gráficos 3D de alta calidad son la norma en los videojuegos, películas y aplicaciones interactivas:

  • Década de 1950: se producen los primeros intentos de generar gráficos por ordenador se llevaron a cabo en instituciones de investigación y laboratorios gubernamentales. Los gráficos eran muy simples y se basaban en líneas y puntos que se generaban utilizando dispositivos analógicos.
  • Década de 1960: se desarrollaron los primeros sistemas de visualización por ordenador, como el Sketchpad de Ivan Sutherland, que permitía dibujar gráficos simples en una pantalla mediante una tableta de luz y un lápiz óptico. Estos sistemas sentaron las bases de la interacción gráfica directa.
  • Década de 1970: la introducción de los gráficos rasterizados marcó un gran avance en la representación gráfica por ordenador en 2D. Se desarrollaron algoritmos para dibujar líneas y formas geométricas en una matriz de píxeles. Los gráficos rasterizados permitieron la creación de imágenes más complejas y realistas, y la entrada en la era 3D.
  • Década de 1980: los gráficos por ordenador empezaron a expandirse hacia el sector doméstico o de consumo. Surgieron las primeras tarjetas gráficas dedicadas, lo que permitió una mayor capacidad de procesamiento y una representación más rápida de los gráficos en tiempo real. Por ejemplo, como el IBM Monochrome Display Adapter para IBM PC que debutó en 1981 y que sería una gráfica revolucionaria en aquel momento, con hasta 720×350 px de resolución para monitores CRT.
  • Década de 1990: se produjo un gran avance con la introducción de los gráficos 3D. Surgieron las primeras aceleradoras gráficas 3D, como la Voodoo Graphics de 3dfx, que ofrecían una representación tridimensional en tiempo real. Esto allanó el camino para los gráficos 3D en los videojuegos y las aplicaciones de modelado. Por ejemplo, la Voodoo I de 1996 permitía procesar gráficos 2D y 3D con resoluciones de 640 x 480 píxeles gracias a sus 4 MB de memoria VRAM.
  • Década de 2000: los gráficos por ordenador se volvieron más sofisticados y realistas. Se introdujeron técnicas avanzadas como el sombreado, la iluminación dinámica y los efectos especiales. Las tarjetas gráficas mejoraron en potencia y capacidad de procesamiento, lo que permitió una mayor calidad visual en tiempo real.
  • Década de 2010 y más allá: la tecnología de gráficos por ordenador ha seguido avanzando rápidamente. Se han desarrollado técnicas de renderizado fotorrealistas, como el trazado de rayos en tiempo real, que han llevado los gráficos a un nivel casi indistinguible de la realidad. Los juegos, películas y aplicaciones interactivas actuales se benefician de estas tecnologías, creando experiencias visuales impresionantes.

En definitiva, mucho evolucionaron las cosas en el ámbito del gaming desde aquel primer Tomb Raider que salió para la PlayStation de Sony, y que modeló el personaje de Lara Croft con tan solo 250 triángulos, mientras que el actual personaje del título Shadow of the Tomb Raider para PC de la actualidad necesita unos 200000 triángulos para este mismo personaje.

Más información sobre los triángulos en ¿cómo funciona una tarjeta gráfica para generar los gráficos?

La calidad de las texturas y la cantidad de detalles se fueron incrementando año tras año, generando cada vez títulos de videojuegos más y más realistas, como los que puedes ver en la actualidad, en la que cuesta trabajo diferenciar entre una imagen real y una generada por la GPU en algunos casos. Pero ¿crees que han llegado a su tope? Aún faltan muchas investigaciones en marcha que mejorarán aún más los actuales gráficos…

Nuevos motores gráficos

Los motores gráficos también tienen mucho que decir en cuanto a los gráficos cada vez más realistas. EPIC Games ya mostró de lo que era capaz su Unreal Engine 5, con nuevo sistema de geometría Nanite, mejoras para el renderizado, etc. Un gran avance que permite a este software crear videojuegos con gráficos mucho más realistas, aprovechando al máximo las mejores características de las GPUs actuales.

Si ponemos como ejemplo un videojuego como Crysis, donde se presentan hasta 2 millones de polígonos en cada escena completa de este videojuego. Esto significa que se tendrán que consumir más de 50 MB de memoria VRAM para cada escena, y que una GPU moderna tardaría en torno a los 8 ms en procesarlo. Esto quiere decir que en cada segundo puede procesar una cantidad limitada de FPS para refrescar la pantalla, sin tener en cuenta otros detalles que también afectan al retraso en la entrega de fotogramas.

Crysis

Los actuales sistemas han ido aumentando la cantidad de triángulos en escena para crear objetos o entornos más realistas mediante teselación o geometría. Con el Unreal Engine 5 se puede esperar un gran paso adelante gracias al sistema Nanite que cité anteriormente, ya que permitirá crear altos niveles de detalle para los videojuegos de próxima generación, como los títulos AAA que irán apareciendo próximamente.

Y no se quedarán aquí. En los próximos años, la cantidad de texturas la calidad y las capacidades en cuanto a polígonos seguirá aumentando para mejorar el color, el brillo, los movimientos, y la calidad de los videojuegos, haciendo que cada vez sean más difícilmente diferenciables de la realidad.

Por otro lado, no solo en el ámbito de los motores gráficos y del lado de la GPU está avanzando, también hay que tener en cuenta que las APIs gráficas también lo están haciendo, y que los nuevos monitores están llegando a resoluciones y calidades cada vez más espectaculares, como los actuales 4K o los 8K, lo que presentará también desafíos para escenas cada vez con mayor cantidad de píxeles que deberá generar la GPU.

Aunque es cierto que los videojuegos con resoluciones 4K aún no se han convertido en el estándar de facto, sino que se sigue tirando de resoluciones anteriores, lo cierto es que la huella de las texturas almacenadas en la memoria están siendo cada vez mayores, necesitando más y más memoria VRAM. De hecho, los 8 GB que se ponían como mínimo hace apenas un año, ahora con los nuevos motores como Unreal Engine 5 y los nuevos títulos AAA han quedado algo cortos, por lo que los 12 GB son los nuevos 8 GB.

Las texturas cada vez más imponentes y las mayores resoluciones son cada vez más importantes para mayor realismo e inmersión, más aún cuando se trata de sistemas de realidad virtual. Así que tal vez no mucho más adelante veamos las primeras 16K. Sin embargo, todo esto sería inútil si no se cuenta con un buen sistema de sombreado e iluminación, que le da también parte de ese realismo a la escena.

Estos sistemas de iluminación ya llevan casi medio siglo evolucionando, mejorando sus algoritmos para crear resultados más rápidos y con mayor realismo posible. Las actuales GPUs han integrado incluso unidades de procesamiento dedicadas especiales como tecnologías como puede ser el Ray Tracing para esto que permiten a los desarrolladores usando los motores gráficos crear piezas más que decentes…

Ray Tracing: más y mejor

Ray Tracing

Los nuevos gráficos 3D necesitan de una serie de trucos para dar la impresión de que se está mirando una imagen real, con unas fuentes de iluminación muy precisas. Todo esto se debe procesar mediante cálculos de física para determinar cómo se proyectan los rayos de luz, cómo se generan las sombras, cómo pueden reflejarse, etc. Es algo bastante complejo.

Actualmente, con el Ray Tracing se permite mediante ciertos algoritmos poder generar esta iluminación con cada vez mayor realismo y sin tanta sobrecarga para la GPU. Como sabes, tanto AMD, como NVIDIA y también Intel han avanzado en sus propias tecnologías de trazado de rayos. Y gracias a AMD también ha llegado a consolas como la Xbox de Microsoft y la PlayStation de Sony.

Gracias a esto, nuevos títulos han podido aprovechar este Ray Tracing para generar un impacto en el rendimiento menor y que los videojuegos se vean con una calidad superior. Por ejemplo, como esta escena que puedes ver de Metro Exodus: Enhanced Edition:

Y, hay que decir que las capturas de pantalla simples no le hacen justicia.

No obstante, aún tiene un impacto en el rendimiento en la actualidad, y se nota en los FPS cuando activas o desactivas el RT. Sin embargo, en las próximas generaciones de GPUs esto mejorará aún más, y se convertirá en algo totalmente omnipresente, como el mapeo de las texturas en la actualidad. Quizás en un tiempo deje hasta de ser opcional.

Y, si eres un gamer y cuentas con algunos títulos basados en motores gráficos ponentes como Unity 3D o Unreal Engine con las APIs Direct3D 12 Ultimate o con Vulkan, te habrás dado cuenta que se nota mucho a calidad con el Ray Tracing en títulos como Cyberpunk 2077 (usa motor REDengine), Far Cry 6 (usa motor Dunia), Metro Exodus (usa motor 4A Engine), etc., incluso en los videojuegos más humildes en cuanto a gráficos como Minecraft (motor LWJGL) se nota la diferencia. Mover al personaje a través del escenario, viajar a través de la sombra y la luz, capturar el movimiento en los reflejos de los paneles de vidrio: la tensión y la atmósfera se amplifican notablemente cuando se emplea el trazado de rayos.

Pues bien, como he comentado, en un tiempo, las nuevas GPUs serán tan poderosas que el Ray Tracing podrá estar activado por defecto, sin tanta demanda del hardware, haciendo que los títulos se beneficien de ello. Una de las soluciones para esto podría ser aumentar la memoria caché de la GPU, ya que se necesitan más lecturas de datos cuando se activa el Ray Tracing, además de mejorar el ancho de banda de la memoria. Algo que se puede mejorar si se emplean nodos de fabricación cada vez más avanzados.

Además, la mejora de los paneles de las pantallas, como las evoluciones de las OLED y las nuevas tecnologías de paneles que sustituirán a este panel también podrían aprovechar aún mejor el Ray Tracing con mayor contraste entre las zonas brillantes y oscuras, lo que resultaría en una escena impactante con todo lujo de detalle de luces, sombras, transparencias, reflejos, etc.

¿Cuándo podrían llegar mejoras notables en cuanto al Ray Tracing en este sentido, pues quizás en unos 5 años podrían verse algunos avances muy importantes que no solo se notarán en los videojuegos, también en software de renderizado como Blender, o en la calidad de las películas de animación…

No obstante, en la actualidad, incluso con todos los trucos o atajos de renderizado empleados para acelerar las cosas, el trazado de rayos sigue siendo prácticamente exclusivo de las tarjetas gráficas de gama media-alta más actuales. Los jugadores de PC con modelos de gama media-baja, en este momento, tienen dos caminos: habilitar el trazado de rayos pero bajar todas las demás configuraciones gráficas para que funcione bien o simplemente dejar la configuración desactivada por completo.

Por lo tanto, puedes pensar que la idea de que el trazado de rayos esté en todas partes, para todos, está a unos años de distancia, al igual que sucedió con, por ejemplo, la invención del mapeo normal o el teselado para aparecer en todas las GPU.

Mejor calidad, mayor resolución, sin escalado DLSS, FSR, etc.

Cuando NVIDIA creó la arquitectura Turing en 2008, apareciendo el primer hardware que permitía el Ray Tracing, los cálculos necesarios para estos efectos de iluminación también hicieron que aparecieran otras nuevas unidades dentro de la GPU, como son los núcleos Tensor o tensoriales.

Un núcleo Tensor básicamente es una colección de FPUs, es decir, unidades de cálculo de coma flotante que multiplican y suman valores de matrices en precisión muy baja, como pueden ser los FP8, FP16, etc., ya que son los que más se demandan en cargas de trabajo de aprendizaje automático o inteligencia artificial.

Gracias al poder de estos núcleos Tensor, NVIDIA también pudo desarrollar un sistema para mejorar el rendimiento y que se denominó DLSS, que ha ido mejorando con cada generación hasta el actual DLSS 3.0. AMD empezó a ser algo similar en sus GPUs de nueva generación con la tecnología denominada FSR, mientras que Intel también siguió estos mismos pasos con XeSS.

La idea detrás de estas tecnologías es la misma. Se trata de mejorar el rendimiento del renderizado de la GPU al procesar un frame o fotograma a una resolución mucho más baja que la muestra que se presentará en el monitor y luego se escala aumentando la cantidad de los píxeles mediante un algoritmo complejo impulsado por IA para que la calidad sea la mejor posible.

Gracias al aprendizaje profundo, se pueden usar estos algoritmos matemáticos complejos para que todos los fotogramas renderizados puedan mostrarse a gran escala en el monitor sin demasiada pérdida de calidad, pero con un impacto mucho menor en el rendimiento de la GPU.

Conforme vaya mejorando las tecnologías citadas anteriormente, y los núcleos tensoriales, poco a poco las nuevas GPUs permitirán generar imágenes que tengan una calidad casi idéntica a la renderizada, y con cada vez menos impacto en el rendimiento. En el caso de AMD FSR, empleando el denominado muestreo Lanczos para suavizar las imágenes finales y que no necesita de núcleos tensoriales específicos como DLSS.

Pero, cuando la GPU pueda tener rendimiento suficiente para procesar los frames a un tamaño nativo como el de la pantalla, no se necesitarán estas tecnologías, pasando a ser una «moda» pasajera, como lo fueron otras tecnologías en el pasado.

IA para potenciar el realismo

Los gráficos en sí en un videojuego no son lo único que dan realismo a un videojuego, hay algo más allá que también puede ayudar. La IA también tiene mucho que decir en este caso, con la cual se podría mejorar mucho el realismo de los próximos videojuegos, como respuestas de los personajes mucho más realistas, mejorar la inteligencia de estos personajes, que actúen de formas más reales, etc. Actualmente, estos personajes están dotados de cierta IA, pero a veces siempre hacen lo mismo, o son muy predecibles.

Parecer que los personajes sean más realistas, e incluso que puedan mantener diálogos o interacciones como lo haría una persona real con el jugador, es un desafío, y esto podría llegar en futuras generaciones de tarjetas gráficas, que aportarían núcleos tensoriales o similares dedicados a acelerar las cargas de esta IA del videojuego.

Por ejemplo, imagina un enemigo actual, que parece a veces algo «tonto», actuando siempre de la misma manera, con las mismas habilidades y que puedes vencer fácilmente incluso guardando la partida si fallas una vez para volver a intentarlo sabiendo ya lo que va a ocurrir previamente.

Pero… ¿y si el personaje te sorprendiera? ¿y si aprendiese? ¿y si se volviese más inteligente? ¿y si pensase para tenerte una trampa? ¿y si modificase su comportamiento según cada situación sin seguir un patrón automático? Pues así serán los futuros videojuegos, casi como escenarios reales.

Además, los videojuegos con final abierto o que cambian según el camino que sigas, también pueden ser mucho más ricos e impredecibles, casi con un final diferente para cada jugador. Lo cual le daría un toque muy especial y realista.

Empresas como OpenAI, la creadora de la IA del famoso chapGPT, ya entrenaron a su inteligencia artificial para jugar al videojuego Dota 2 en 2017 y que jugaran miles de partidas antes de enfrentar la IA a jugadores humanos de todo el mundo, y con bastante buen resultado.

Imagina un personaje de videojuego que aprende, que se hace cada vez más inteligente, y que te desafiará cada vez más. Esto puede hacer que los videojuegos del futuro parezcan demasiado difíciles. Pero se pueden generar diferentes niveles de desafío a partir de la cantidad de operaciones neuronales realizadas durante el entrenamiento. Entonces, los desarrolladores podrían crear, por ejemplo una decena de niveles de «IA bot» basados ​​en una decena de sesiones de entrenamiento diferentes realizadas previamente con la IA: cuanto más corto sea el entrenamiento, más tonta será la IA.

Desarrollo de videojuegos más rápido

Ratón de juego MMORPG

Más allá del alcance de la IA para mejorar la forma en que se juegan y se sienten los juegos, hay que considerar el desarrollo del juego en sí. El proceso de creación de todos los elementos de un juego (modelos, texturas, etc.) requiere mucho tiempo y, a medida que los mundos se vuelven más complejos y detallados, también lo hace el tiempo necesario para completar este trabajo.

En estos días, el desarrollo de un título AAA requiere que cientos de personas dediquen muchas horas durante muchos años. Esta es la razón por la que los desarrolladores de juegos están buscando formas de reducir esta carga de trabajo y las empresas de GPU están a la vanguardia de dicha investigación. En cambio, usar la IA para desarrollar videojuegos podría acelerar el proceso, haciendo que nuevas versiones se lancen al mercado con menos retrasos y que haya más y más títulos donde elegir…

Por ejemplo, podrían ayudar a los desarrolladores humanos a modelar facciones de cara más rápidamente según los gestos, las emociones del personaje, etc., también podrían ayudar a mejorar y optimizar el código fuente del videojuego, etc., generar la propia IA las voces sin tener que pagar a equipos de actores o dobladores especializados, etc.

Por ejemplo, NVIDIA y Remedy Entertainment han desarrollado un método, utilizando el aprendizaje automático, que puede producir el movimiento requerido de los polígonos basado completamente en el discurso que se está reproduciendo. Esto no solo acelera una parte del proceso de creación de contenido, sino que también ofrece una solución a las empresas que buscan expandir su base de jugadores.

Ten en cuenta que la localización del habla a veces no funciona del todo, simplemente porque las animaciones faciales se generaron solo para un idioma. Sin embargo, con la IA se podrían generar para todos los idiomas disponibles para el videojuego, haciendo que elijas el idioma que elijas, los movimientos de la boca o la lengua encajen a la perfección con lo que está diciendo en ese idioma.

La investigación sobre los campos de radiación neuronal también es prometedora para los desarrolladores de juegos. Los gustos del software Instant NeRF de Nvidia pueden generar una escena 3D, basándose nada más que en unas pocas fotos y detalles sobre cómo se tomaron. Además, podría ayudar a crear texturas de pieles, lanas, y otros tejidos o materiales de forma más rápida y realista.

No obstante, de todo esto de lo que hablo quizás falte al menos 10 años, una década en la que las GPUs se podrían volver suficientemente potentes para el aprendizaje profundo, ya que en la actualidad, muchas de estas cosas solo están al alcance de supercomputadoras. Pero recuerda algo, el Ray Tracing también era impensable hace años y ahora es posible. La supercomputadora empleada para renderizar películas en Pixar tiene la mitad de potencia que un iPhone 6… quiero decir, el rendimiento informático avanza a pasos agigantados.

Cambios en la GPU/hardware 3D

Por supuesto, el hardware de aceleración 3D, o GPU, también tiene mucho que cambiar desde el actual hasta el de futuro. Como hemos visto a lo largo de los años, desde los gráficos procesados por la CPU, hasta los primeros aceleradores gráficos y las actuales tarjetas gráficas tal como las conocemos, básicamente han cambiado algunas cosas en cuanto a la tecnología que ha ido madurando.

Sin embargo, hasta el momento, los investigadores estaban bastante limitados en la forma de probar sus modelos y teorías. Ahora, en las últimas generaciones de GPUs, hemos visto los primeros cambios significativos aparecer, y que han ido más allá de simplemente incorporar ciertas funciones o tecnologías nuevas o de mejorar el nodo de fabricación del chip, la capacidad de memoria, etc. Y es que ahora se ha introduciendo los núcleos tensoriales o Tensor para cargas de IA, dando un gran protagonismo a éstos.

En unos pocos años, la arquitectura de la GPU se irá mejorando y cambiando también más allá de lo que actualmente tenemos, todo para aumentar el rendimiento y la calidad gráfica. Y es que tendrá que aguantar el ritmo de avance del software más exigente, como los videojuegos, haciendo que las futuras tarjetas gráficas para PC sean más parecidas a lo que ahora vemos para HPC o centros de datos, como las AMD Instinct, o las NVIDIA A/H-Series, etc.

Además, veremos seguro alguna nueva unidad computacional diferente a no muy tardar, al igual que aparecieron los núcleos Tensor, o los de RT dedicados, e incluso los motores para de/codificación AV1, etc. Unidades dedicadas que irán destinadas a mejorar el rendimiento y el realismo.

Computación difusa: un paso más allá, y aún lejano…

Y, no me gustaría terminar, antes de agregar que el actual limitante de la IA es el hardware, por lo que a corto plazo la prioridad es mejorar este hardware basado en paradigmas computacionales actuales. Sin embargo, en un futuro lejano habría que preguntarse qué nos puede deparar las computación difusa en el ámbito de los gráficos, y la computación cuántica, que aún queda demasiado lejos.

La computación difusa, también conocida como lógica difusa o lógica borrosa, es una rama de la inteligencia artificial que se ocupa de manejar la incertidumbre y la imprecisión en los sistemas de toma de decisiones. A diferencia de la lógica clásica binaria, que utiliza valores booleanos como verdadero o falso, la computación difusa permite la representación y manipulación de información imprecisa utilizando valores borrosos o difusos.

La base de la computación difusa es el concepto de conjuntos difusos, que son conjuntos en los que los elementos pueden tener un grado de pertenencia que varía continuamente entre 0 y 1. En lugar de asignar un valor binario de pertenencia, como 0 o 1, a un elemento en un conjunto, la computación difusa permite asignar grados de pertenencia parciales. Esto es especialmente útil cuando se trata de lidiar con conceptos vagos o inciertos que no se pueden definir de manera precisa.

La principal herramienta utilizada en la computación difusa es la inferencia difusa, que es el proceso de tomar decisiones basadas en reglas difusas. Estas reglas difusas describen relaciones entre conjuntos difusos y se utilizan para deducir conclusiones borrosas basadas en la información de entrada. Algo aplicable a la toma de decisiones o control, etc.

Es decir, la computación difusa es una técnica que permite modelar y resolver problemas en los que la imprecisión, la incertidumbre y los conceptos vagos desempeñan un papel importante. Al utilizar conjuntos difusos y reglas difusas, la computación difusa ofrece un enfoque flexible y poderoso para abordar situaciones donde la lógica clásica no es suficiente.

Conclusión

El futuro va a ser impresionante. Pero también parece realmente impresionante en cuanto a los gráficos. Se caracterizará por gráficos en tiempo real más realistas, ray tracing generalizado, pantallas de mayor resolución, experiencias de realidad virtual y aumentada más inmersivas, y una mayor integración del aprendizaje automático en la generación de gráficos. Estos avances ofrecerán una calidad visual excepcional y abrirán nuevas posibilidades en áreas como los videojuegos, la simulación, la visualización de datos y más. Y seguro que alguna que otra sorpresa…

Jaime Herrera

Jaime Herrera

Técnico electrónico y experto en el sector de los semiconductores y el hardware. Con una amplia y sólida trayectoria en el campo de la electrónica, he acumulado una extensa experiencia. Mi pasión por la tecnología y la informática me ha impulsado a dedicar décadas de mi vida al estudio y desarrollo de soluciones en este fascinante sector. Como técnico electrónico, he tenido el privilegio de trabajar en una variedad de proyectos y desafíos, lo que me ha permitido adquirir un profundo conocimiento y experiencia en la creación, diseño y mantenimiento de dispositivos electrónicos.

>
Guía Hardware
Logo