Con la presentación de DLSS 4 se ha vuelto a generar la clásica polémica de los fotogramas falsos, un tema recurrente que ya fue objeto de debate con el lanzamiento de DLSS 3, una versión que introdujo la generación de fotogramas, y que parece todavía muy lejos de estar zanjado.
¿Son realmente falsos los fotogramas generados? Para responder a esta pregunta primero debemos entender cómo trabaja esta tecnología, y luego veremos qué impacto tiene en los juegos y qué diferencias puede llegar a marcar. Poneos cómodos, que empezamos.
¿Qué es y cómo funciona la generación de fotogramas?
La generación de fotogramas es una tecnología que utiliza información de fotogramas renderizados de manera tradicional para crear nuevos fotogramas independientes en la GPU. Para renderizar un fotograma de forma tradicional se utilizan tanto la CPU como la GPU, mientras que con la generación de fotogramas el procesador no interviene, y todo queda en manos de la GPU.
Dependiendo de la plataforma utilizada, esta tecnología puede tener acceso a más o menos información de esos fotogramas, y también puede estar acelerada o no por IA. Cuanta más información se utilice mejor será la calidad final de los fotogramas generados, y la IA también puede contribuir enormemente a mejorar el resultado.
NVIDIA utiliza IA en su generación de fotogramas, y cuando esta se implementa de forma nativa en juegos puede acceder tanto a información espacial como a vectores de movimiento del juego. Al tener tanta información se puede hacer una estimación más precisa del movimiento de los píxeles en los fotogramas generados.
Los vectores de movimiento, y la IA acelerada por hardware, han demostrado ser dos claves fundamentales para que la generación de fotogramas pueda conseguir buenos resultados en juegos. Sin ellos, los fotogramas generados no muestran con precisión el recorrido de los píxeles, y acaban produciendo problemas en la calidad de la imagen, como artefactos y fallos graves.
En su versión básica, la generación de fotogramas genera un fotograma adicional por cada fotograma renderizado de manera tradicional. Con la llegada de las GeForce RTX 50 se ha introducido la multigeneración de fotogramas, que permite generar hasta tres fotogramas adicionales por cada fotograma renderizado de manera convencional.
¿Y cómo se generan esos fotogramas? En el caso de DLSS 4, la IA utiliza esa información que obtiene de fotogramas renderizados de manera tradicional para hacer una estimación del recorrido, movimiento y posición de los píxeles, así como del color y de la iluminación de los mismos. Si la posición o el color de los píxeles no es la correcta esto puede acabar produciendo fallos gráficos, que es lo que sucede normalmente con la interpolación de fotogramas clásica, que no utiliza IA ni vectores de movimiento.
Piensa, por ejemplo, en una escena en un juego donde vamos conduciendo una moto, y nos estamos moviendo hacia la derecha acercándonos a la luz de una farola. En un fotograma renderizado tradicionalmente la representación de los píxeles es correcta porque la GPU cuenta con toda la información en tiempo real, gracias al trabajo de la CPU.
Con un fotograma generado la CPU no interviene, así que la GPU es la que tiene que determinar todo lo que os he comentado anteriormente para representar correctamente tanto el movimiento de los píxeles como la nueva iluminación de los mismos. Cualquier error afectará a la calidad del fotograma, y en casos extremos podría producir rupturas de elementos gráficos, una representación del color inadecuada y artefactos gráficos.
Los fotogramas generados se van intercalando con los fotogramas renderizados. La proporción depende de la modalidad que estemos utilizando, en el caso de DLSS x2 tenemos un fotograma generado por cada fotograma renderizado, en DLSS x3 tenemos dos fotogramas generados por cada fotograma renderizado, y con DLSS x4 nos encontramos con tres fotogramas generados por cada fotograma renderizado.
¿Por qué se intercalan fotogramas renderizados y generados?
Por dos razones importantes. La primera es que para generar fotogramas es necesario tener al menos un fotograma renderizado que aporte la información necesaria para el proceso de generación, porque la IA no puede inventarse los fotogramas desde cero.
En segundo lugar, hay que tener en cuenta que cada nuevo fotograma renderizado de manera tradicional permite refrescar la cola de generación de fotogramas, aportando nueva información, que es totalmente correcta, para continuar con el proceso de generación y conseguir una mejor calidad y estabilidad de la imagen.
Lo que os acabo de decir nos lleva a otra cuestión muy importante relacionada con la generación de múltiples fotogramas. Cuando generamos más de un fotograma estamos reutilizando la información del fotograma anterior, que también es generado, lo que puede incrementar el riesgo de que se produzcan errores durante el proceso de generación, tanto por el movimiento como por el color de los píxeles.
Por eso son tan importantes los fotogramas renderizados, porque son la base de los generados, y también son fundamentales para mantener un flujo de información constante que permita seguir generando fotogramas con un alto nivel de calidad y de precisión. Si solo renderizamos un fotograma y generamos todos los demás llegaríamos a un punto insostenible, con errores gráficos graves.
¿Es viable generar múltiples fotogramas?
Imagen rota por la generación de fotogramas. Fuente: Ancient Gameplays
Sí, aunque con una serie de requisitos y de limitaciones. No es lo mismo generar varios fotogramas utilizando IA y vectores de movimiento que hacerlo a partir de una interpolación básica y con poca información, que es precisamente lo que hace la aplicación Losless Scaling en su versión 3.0, ya que afirma ser capaz de generar hasta 20 fotogramas.
Cumple con lo que promete, pero el resultado es terrible, ya que al generar tantos fotogramas la imagen se va degradando hasta tal punto que se deforman constantemente. Esto ocurre por lo que os he explicado anteriormente, porque se produce una discrepancia enorme entre la posición y color correcta de los píxeles, dada por los fotogramas renderizados, y la representación de los píxeles que hacen esos veinte fotogramas generados, que es incorrecta.
Con DLSS 4 y la multigeneración de fotogramas NVIDIA ha demostrado que es posible generar hasta tres fotogramas por cada fotograma renderizado manteniendo un buen nivel de calidad de imagen, una sincronización correcta y sin que se produzcan fallos gráficos graves gracias a la IA acelerada por hardware y a toda esa información a la que puede acceder esta tecnología.
Si vamos a utilizar Losless Scaling os recomiendo no pasar en ningún caso de dos fotogramas generados. Tened en cuenta que esta aplicación tiene muchas más limitaciones, y que incluso con solo un fotograma generado es fácil apreciar artefactos y fallos gráficos en juegos. Lo mismo ocurre con la tecnología de generación de fotogramas integrada en FSR de AMD.
Los fotogramas generados, ¿son falsos?
No, no son falsos. Estos fotogramas existen, de hecho se perciben perfectamente y afectan a la sensación de fluidez que tenemos al jugar. La diferencia que marcan es muy grande, sobre todo si cumplen con un mínimo de calidad y de estabilidad de la imagen, ya que en este caso se asemejan bastante al resultado final que podríamos esperar de un fotograma renderizado.
¿Por qué se dice entonces que son falsos? Pues porque no son renderizados de forma tradicional, y esto hace que no sean medidos por muchas herramientas actuales. El motivo no es que no sean reales, es que al haber sido generados sin intervención de la CPU se requieren herramientas específicas para poder identificarlos y medirlos.
Que algo no se pueda medir con herramientas desarrolladas antes del surgimiento de una nueva tecnología no significa que esta no exista, o que no funcione. Además, hay que tener presente que para generar esos fotogramas es necesario consumir recursos tanto a nivel de GPU como de memoria gráfica, dos detalles más que dejan constancia de que son muy reales.
Respeto que haya gente que esté en contra del uso de esta tecnología, pero esto no cambia el hecho de que existe, que funciona perfectamente y que puede mejorar muchísimo la fluidez en juegos.
Qué ventajas tiene la generación de fotogramas
No depende de la CPU, así que no se ve afectada por cuellos de botella.
Puede utilizar modelos de IA de visión avanzados para mejorar los resultados.
Es posible acelerarla por hardware y utilizar información avanzada para generar fotogramas de mayor calidad.
Consume muchos menos recursos que el renderizado tradicional, así que tiene un coste mucho más bajo.
Se puede implementar fácilmente en cualquier tipo de juego.
Permite mejorar mucho la fluidez, tanto que puede convertir una experiencia de 30 FPS en una de 120 FPS o más.
Mejora la fluidez en juegos sin disparar el consumo energético.
Ha hecho posible saltos generaciones en términos de fluidez que habrían sido imposibles sin esta tecnología.
La entrada Generación de fotogramas, ¿realmente son fotogramas falsos? se publicó primero en MuyComputer.