Intel GFFE (XeSS-FG): el Frame Generator de baja latencia que competirá contra NVIDIA y AMD

La presentación de las GPU y arquitectura Intel Battlemage ha dejado un buen sabor de boca, y aunque de soslayo, tenemos que seguir hablando de los azules en una semana convulsa por el despido encubierto de su CEO, Pat Gelsinger. Intel parece querer dar carpetazo a unos años donde los objetivos no se han cumplido, y acompañando al lanzamiento de sus GPU Battlemage presenta GFFE, o también llamado como XeSS-FG, una tecnología para generar frames mediante extrapolación y sin necesidad de G-Buffers.

Hasta ahora, Intel no tenía en el mercado una tecnología de tipo "Frame Generation" como sí que han conseguido AMD y NVIDIA. Lo de hoy viene a cerrar ese hueco tecnológico de una manera totalmente distinta para conseguir un fin con luces y sombras que cada jugador tendrá que valorar, pero sin duda, representa algo nuevo en el sector que puede atraer a ciertos gamers.

Intel GFFE (G-Buffer Free Frame Extrapolation o XeSS-FG), la tecnología Frame Generation de los azules ya está aquí

Presentada en el SIGGRAPH en el día de ayer, curiosamente, y no en la presentación de hoy como tal, Intel ha querido levantar el hype horas antes de desvelar Battlemage como arquitectura y GPU. Para entender Intel GFFE (XeSS-FG) debemos de comprender algunos conceptos previos que vamos a intentar resumir brevemente para dar contexto a todo el artículo.

AMD y NVIDIA con sus tecnologías Frame Generation se han basado en lo que se conoce como interpolación, las cuales usan FPS anteriores y futuros para crear el frame intermedio mediante vectores de movimiento y flujo óptico, así calculan la interpolación del frame actual en posición, color y propiedades.

Intel-renderizado-de-juegos-con-IA

Esto permite una precisión muy alta y también se mejora con ciertos efectos, pero lógicamente, introduce una latencia adicional en el proceso, un input lag porque el FPS que veremos en pantalla depende de uno futuro, donde para crearlo se necesitan G-Buffers. Los G-Buffers no son más que eso, búferes de información que aportan geometría, materiales, texturas y otras tantas cosas necesarias para el proceso.

Como son necesarios estos G-Buffers, teniendo en cuenta lo dicho con los FPS futuros, tanto AMD y NVIDIA con sus tecnologías actuales de Frame Generation sufren con movimientos rápidos en pantalla, complejos y pesados, así como algunos que no son predecibles, puesto que la heurística falla y genera no solo un mayor problema de lag, sino imperfecciones en el FPS creado por interpolación.

Battlemage deja a un lado la interpolación, bienvenidos a la extrapolación

Intel extrapolación de frames para GFFE

La extrapolación en la que se basa XeSS-FG por parte de Intel sigue con camino paralelo, pero se distancia en la forma para conseguir un objetivo similar, mejor en algunas áreas, peor en otras. La extrapolación se base en generar un FPS futuro a costa de otros previamente renderizados. Es decir, no usa uno previo y otro futuro, sino varios previos para generar el que necesitamos que aparezca en pantalla.

Como ya han sido renderizados y visualizados al completo, el proceso de movimiento y posicionamiento del FPS que necesitamos ver en el monitor tiene una tasa de acierto mayor sobre cómo debería proyectarse, todo mediante heurística. Esta estima el movimiento de los píxeles rellenando el espacio clave o área que no estaban visibles en el FPS anterior.

Intel-XeSS-FG

A esto se le llama disoclusiones, e Intel ha trabajado mucho en ello, pues suponen un problema evidente por cómo trabaja GFFE. Para ello, Intel ha tenido que suprimir el uso de G-Buffers, lo que simplifica la tarea, es cierto, pero tiene que requerir a una heurística y una red neuronal compleja, pero que al mismo tiempo, tiene que ser ligera para conseguir el objetivo principal.

¿Cuál es ese objetivo principal que busca Intel con GFFE / XeSS-FG? Menor latencia final en todas las resoluciones. Para conseguirlo, Intel define tres problemas que ha tenido que solventar:

  • La estimación del movimiento en objetos dinámicos, por ejemplo, rocas que acaban de destruirse, botellas que salen volando de un disparo y en definitiva, todo lo que era inmóvil y de repente se convierte en móvil en pantalla por el motivo que sea.
  • El relleno de las áreas de disoclusiones, es decir, el cómo rellenar en los FPS a futuro las regiones que no son visibles en el fotograma actual, pero que podrían serlo en el siguiente.
  • La corrección del sombreado de los objetos y texturas para que no se vean mal en el siguiente FPS, porque una vez corregidos los dos problemas anteriores, las sombras se podrían ver fatal en el siguiente FPS si no se hace correctamente.

¿Cómo ha conseguido Intel sortear estos tres problemas de GFFE (XeSS-FG) para lograr un mejor rendimiento que AMD y NVIDIA?

Intel GFFE XeSS-FG explicación

Como Intel ha usado extrapolación de FPS sin necesidad de G-Buffers, ha tenido que crear 4 técnicas concretas para solventar los problemas arriba mencionados. El documento de los azules requiere de la comentada estimación del movimiento, la recolección de fondos, la ventana de renderizado adaptativa y junto con la IA, la red de corrección de las sombras o Shading Correction Network.

Estimación del movimiento

No vamos a extendernos mucho porque hace lo evidente, estimar cómo se van a mover los objetos dinámicos para proyectar su posición en el FPS que se extrapola, sin más. El cómo lo consigue es lo interesante. Intel dice que la GPU calcula la trayectoria de cada fragmento en cada píxel y en el espacio tridimensional del juego, donde para ello y por lógica usa el FPS previo ya mostrado en el monitor.

Con ello, ya trabajados los datos previos, predice la posición futura del fragmento mediante la extrapolación lineal de la trayectoria pasada. Resumiendo, usa el pasado para predecir el futuro, la posición pasada del objeto para predecir la posición futura del mismo, frame a frame, de hecho, muestran la fórmula y es bastante simple de comprender.

Una vez que tienen la posición la proyectan, transforman esa información posicional de dichos píxeles al espacio de cámara del FPS extrapolado, lo cual parece magia, pero es comprensible si ya te basas en lo que ha pasado y no en lo que podría pasar como hacen NVIDIA y AMD. La ventaja de estas dos es que no fallan en escenas con movimientos complejos o no lineales, Intel XeSS-FG podría fallar a costa de ser más rápida y eficiente como tecnología de Frame Generation.

Recolección de fondos para evitar o corregir las disoclusiones

Esto es un poco más complejo, pero como hemos comentado arriba, Intel quiere que las áreas visibles de ese FPS que acabamos de extrapolar sean correctas, puesto que no estaban en los FPS previos. Claro, calcular algo presente sin haberlo tenido en el pasado por extrapolación es complejo.

Intel habla de "recolección jerárquica", una especie de niveles, donde los fragmentos (píxeles) visibles en los FPS que ya se han trabajado se almacenan jerárquicamente según estén delante o detrás de otros objetos en pantalla. El cálculo es complejo, pero si lo hacen bien, y deben de hacerlo, los píxeles almacenados según esa jerarquía se proyectan a nuestro FPS extrapolado para rellenar esas disoclusiones y que el Frame completo luzca correctamente.

Esto permite que se recupere información de profundidad en los objetos en áreas incluso complejas, pero tiene la contraparte de que si ese objeto, región o textura, "cosa" en general, nunca fue visible en los FPS previos, la recolección podría fallar o no rellenar el FPS extrapolado con información precisa.

Renderización adaptativa

No hace honor a su nombre en su complejidad, pero da una idea previa de lo que necesita hacer Intel con GFFE sabiendo todo lo dicho. Los azules, para poder adelantarse a las estimaciones de movimiento y a las disoclusiones han ideado un tercer paso inteligente: ampliar el área renderizada que está fuera de la pantalla. Es decir, lo que no estamos viendo en pantalla, pero que está ahí.

La idea es adelantarse a un posible movimiento de cámara rápido que cree los efectos indeseados ya comentados. ¿Cómo lo hacen? Es la "magia" de esto. Intel afirma que estiman la posición de la cámara con una serie de cálculos complejos mediante extrapolación lineal. En otras palabras, calculan hacia dónde se puede ir la imagen en pantalla mediante la posición actual y su orientación, que dependiendo del juego será de un tipo u otro, evidentemente.

Como hacen ese cálculo, ahora pueden determinar un área, una nueva ventana de renderizado anexa a la que está en pantalla, y que incluye las zonas que "probablemente" se mostrarán con el FPS extrapolado. Las ventajas son claras visto esto, ya que Intel reducirá las regiones no visibles como tal, y mejora la precisión de lo que está fuera de pantalla, pero al mismo tiempo, si el movimiento de la cámara fuese errático, podría incidir en áreas que son redundantes.

Shading Correction Network

Es el último paso y evidentemente trata de las sombras, pero también incluye los efectos visuales dinámicos, como reflejos, por ejemplo. Intel XeSS-FG necesitará primero detectar las áreas problemáticas mediante una máscara de enfoque, donde determina las partes del frame dinámicas o con errores ya presentes previos.

Para trabajarlo entra en juego la red neuronal, la cual recibe las 3 entradas de estas: trabaja con el fotograma extrapolado previamente creado e inicial que viene desde el motor geométrico, al mismo tiempo también trabaja con el frame anterior y por último, con el búffer de profundidad. Una vez que tiene toda la información corrige y modifica el frame extrapolado en sombras y reflejos manteniendo el resto de la información sin tocar.

Con ello, Intel consigue que GFFE logre una mejor calidad visual y reduce los artifacts, pero para ello necesita que la red sea muy buena y tenga una gran capacidad de generación y corrección.

¿Es mejor Intel GFFE / XeSS-FG que FSR 3 o DLSS 3 en cuanto a Frame Generation?

Intel GFFE latencia a 1080p de solo 6,62 ms

Pues tiene ventajas y desventajas. Tanto AMD como NVIDIA consiguen su objetivo de aumentar ostensiblemente los FPS, pero a costa de introducir latencia adicional en el proceso por la interpolación y la necesidad de los G-Buffers, a cambio, también parecen ofrecer una calidad más alta de lo que podrá hacer Intel GFFE.

NVIDIA, además, usa Supersampling como tal, mejorando la resolución nativa con DLSS 3, pero peca igualmente de ese "input lag" del que se quejan algunos jugadores. Además, evidentemente, se necesita una RTX con sus Tensor Cores para poder usar dicha tecnología.

¿Qué ventajas tiene entonces Intel XeSS-FG? Pues una latencia increíble. Intel habla de 6,62 ms a 1080p después de todos los procesos descritos en este artículo, donde ofrece incluso una tabla describiendo los ms que tarda en hacer cada tarea.

Intel-GFEE-estimación-de-usar-o-no-usar-G-Buffers-para-extrapolación

Esto quiere decir que introduce la misma latencia que el tiempo de renderizado aproximado para 144 FPS, lo cual es bastante impresionante.

Como hemos explicado, esto se consigue porque Intel GFFE no requiere ningún flujo óptico o vectores de precisión o G-Buffers, así como frames futuros para trabajar, lo hace todo con frames anteriores, limitando las escenas complejas con disoclusiones grandes y los cálculos son mediante aproximaciones y heurística.

Intel-GFFE-con-extrapolación-de-frames

Será menos preciso, no ofrecerá tanta calidad visual, pero parece que por fin será óptimo para jugadores de todo tipo, incluidos los profesionales, al menos sobre el papel. Dicho esto, pinta realmente bien Intel XeSS-FG, y más con las nuevas GPU Battlemage, que han gustado al parecer.