Ya os contamos en nuestro análisis técnico que Resident Evil Requiem implementa trazado de rayos y trazado de trayectorias, dos tecnologías que también está presente en Pragmata, y que mejoran de forma drástica el comportamiento de la luz y las interacciones de esta con la geometría en ambos juegos.
En Resident Evil Requiem la diferencia que marca el trazado de trayectorias es espectacular, y lo mismo os puedo decir de Pragmata, un juego que estoy probando poco a poco, y cuyo análisis técnico espero publicar en los próximos días si el tiempo me lo permite.
Capcom ha hecho un trabajo excelente con la integración del trazado de trayectorias en ambos juegos, y ha llegado a un nivel que no tiene nada que ver con entregas anteriores, como Resident Evil Village, que hacía un uso bastante pobre del trazado de rayos.
El trazado de trayectorias supone un importante desafío cuando se implementa en un juego actual, porque este tiene una geometría muy compleja, lo que acaba disparando la exigencia a nivel de rendimiento. Si no se optimiza adecuadamente nos encontraremos con unos requisitos de hardware exagerados, y si se hacen ciertos sacrificios podríamos encontrarnos con una gran cantidad de ruido en la imagen.
Trazado de trayectorias: así se ha implementado en Resident Evil Requiem y en Pragmata
NVIDIA ha publicado un nuevo vídeo donde explican de una manera muy técnica y profunda cómo ha sido la implementación del trazado de rayos, y del trazado de trayectorias, en el RE Engine de nueva generación utilizado en Resident Evil Requiem y Pragmata.
Toda la implementación corrió a cargo de Kenta Nakamoto y Kosuke Nabata, de Capcom, que completaron el proceso en un año y medio. Trazado de rayos y trazado de trayectorias comparten el mismo pipeline en esta implementación, una medida muy inteligente ya que simplifica y facilita la integración de ambos en juegos.
Ambas tecnologías utilizan también RayQuery, y realizan la evaluación del mismo material utilizando recursos sin vinculación. En la imagen podemos ver también otro detalle importante, y es que la construcción de las BVH (Bounding Volume Hierarchy, Jerarquía de Volúmenes Delimitadores en español) se realiza de forma asíncrona.
Utilizar trazado de trayectorias permite gestionar la iluminación directa e indirecta de una manera distinta, ya que ambas se procesan a través de una única pasada en el pipeline de trabajo de renderizado. Con trazado de rayos, en juegos como Resident Evil Village, la iluminación directa se ejecutaba mediante rasterizado, y la indirecta mediante trazado de rayos.
El trazado de trayectorias nos permite trabajar con una mayor cantidad de rayos, y esto al final aumenta las posibilidades a la hora de conseguir una iluminación más realista, unas sombras más detalladas, unos reflejos más nítidos y limpios y una oclusión ambiental más acorde a la realidad de cada escena, y de los objetos presentes en ella.
SER, ReSTIR GI y DLSS RR al rescate: así han transformado Resident Evil Requiem y Pragmata
No hay duda de que el trazado de trayectorias mejora mucho la calidad de la iluminación, las sombras y los reflejos en juegos, pero tiene dos grandes contrapartidas: su impacto en el rendimiento y el ruido que acaba generando. La construcción de las BVH de forma asíncrona fue un pilar clave en términos de rendimiento, pero hay otras cosas que tuvieron un gran impacto.
Ya sabemos que, para mejorar el rendimiento, podemos activar NVIDIA DLSS 4 y multigeneración de fotogramas, pero no debemos olvidarnos del papel que juega NVIDIA DLSS RR, siglas de «Ray Reconstruction», la conocida reconstrucción de rayos que lanzó NVIDIA con el debut de DLSS 3.5. Si necesitáis saber más de esta tecnología os invito a hacer clic en el enlace anterior.
La reconstrucción de rayos actúa como un sistema de reducción de ruido que utiliza IA para diferenciar de una manera más precisa los píxeles, espaciales y temporales, malos y buenos (los buenos son los que tienen una mayor calidad).
A lo anterior debemos unir que es capaz de identificar diferentes efectos de trazado de rayos y de trazado de trayectorias, lo que le permite conseguir un mayor nivel de detalle en la representación final de cada fotograma, y ofrecer una imagen más limpia y nítida.
Esta tecnología tiene también un impacto positivo a nivel de rendimiento, y fue fundamental para resolver diferentes fallos gráficos que se producían al aplicar el trazado de trayectorias, como por ejemplo:
Aspecto borroso y artefactos en determinadas zonas, como la piel y el cabello, al utilizar «subsurface scattering».
Fallos gráficos en superficies de cristal, como efectos de emborronado y otros artefactos gráficos.
Problemas y fallos en la disoclusión de la geometría más pequeña en pantalla, incluyendo pequeños escombros y gotas de agua del efecto de lluvia.
Hologramas y problemas diversos en los efectos de iluminación dinámicos que tienen un movimiento más rápido.
Aunque la reconstrucción de rayos fue fundamental para solucionar muchos de los problemas que surgen al aplicar el trazado de trayectorias, esta no fue la única arma que tuvo Capcom a su lado. La compañía japonesa también utilizó ReSTIR GI para estabilizar y mejorar los resultados obtenidos con la reconstrucción de rayos.
Con ReSTIR GI, aplicada a la iluminación global indirecta, Capcom reutilizó muestras de rutas de rayos obtenidas de diferentes fotogramas adoptando una regla importante: las rutas obtenidas de fotogramas actuales se almacenan siguiendo un criterio «por píxel», y las rutas de fotogramas anteriores se remuestrean con el tiempo para que sigan siendo útiles.
Esta ejecución funciona, pero tiene un problema, y es que se puede producir una elevada correlación con la reconstrucción de rayos. Para evitar esto, las muestras se tomaron de posiciones que estaban ligeramente desplazadas con respecto a los píxeles del fotograma anterior, evitando coincidencias exactas.
Capcom también utilizó RIS (Reconfigurable Intelligent Surface) cómo técnica de optimización para calcular y ponderar mejor la IBL (Image-Based Lighting), lo que permitió reducir el nivel de ruido con un bajo coste a nivel de rendimiento, y mejorar la ejecución al utilizar reconstrucción de rayos.
SER fue otra de las tecnologías que ayudó a Capcom a mejorar el rendimiento. Los que nos leéis a diario ya sabéis que son las siglas de «Shader Execution Reordering», y que supone la reordenación de los hilos de trabajo que despachan los shaders de la GPU en bloques o grupos específicos, eliminando con ello el retraso en la cola de renderizado que se produce por los hilos fragmentados.
Uno de los temas más interesantes en el tema del rendimiento es el trazado de trayectorias y el cabello de los personajes. Capcom ha implementado en Resident Evil Requiem y en Pragmata una versión mejorada de su tecnología de cabello basada en hebras, que consiste en un pipeline híbrido de hardware y software mediante rasterización.
Para crear ese cabello tan realista y espectacular que hemos visto en ambos juegos, se generan mechones de cabello en tiempo real que se clasifican en función de si serán utilizados o descartados. Los seleccionados para ser utilizados se rasterizan en mechones opacos, y luego se les aplica un proceso para dotarlos de un efecto de semitransparencia por software, que se aplica a los mechones más finos.
Aplicar trazado de trayectorias de forma individualizada a los mechones de pelo tendría un impacto enorme en el rendimiento. Para evitar este problema, lo que se hizo fue aplicar mallas completas que sustituyen a la geometría de cada mechón, acelerando la creación de la BVH y reduciendo el consumo de recursos.
Toda esta combinación de tecnologías ha permitido a Capcom conseguir un acabado técnico espectacular con Resident Evil Requiem y Pragmata, ya que ambos títulos se han ganado el derecho a ser considerados como dos de los juegos que mejor uso hacen del trazado de trayectorias, y además han sido capaces de mantener un buen nivel de rendimiento.
La entrada Resident Evil Requiem y Pragmata utilizan SER, ReSTIR GI y DLSS RR: ¿sabes qué son y por qué importan? se publicó primero en MuyComputer.


