Durante el pasado mes de agosto supimos que Microsoft trabajaba en la idea de eliminar o, por lo menos minimizar, los microparones durante nuestras sesiones de juego conocidos como stuttering. Este problema deriva de la necesidad de compilar shaders para el mapa al que vamos a jugar y eso puede cargar demasiado nuestro procesador e impedir que se dedique a dar las órdenes a nuestra tarjeta gráfica con la suficiente frecuencia.

Mucho se ha hablado de este problema en análisis de juegos y hay motores gráficos más propensos a sufrirlo como es el caso de Unreal Engine, pero parece que si bien fácilmente arrastra este problema su facilidad de uso pero no de optimización es lo que provoca que tantos títulos basados en UE sufran esta problemática. Tim Sweeney no para de decirlo: los desarrolladores no invierten tiempo puliendo y optimizando sus juegos basados en este motor.
La compilación de shaders al arrancar el juego o en las pantallas de carga ayudan a reducir el problema sin embargo si vamos avanzando y necesitando nuevos objetos, texturas u otros elementos vuelven los parones por lo que hay que encontrar la forma de ir compilando en segundo plano por avanzado y sin un alto coste para nuestro procesador, otras opciones pasan por incrementar los tiempos de compilación de shaders mientras cargamos el juego o tenerlas ya compiladas.
Unreal Engine 5 en sus versiones más modernas han implementado herramientas para que los desarrolladores puedan analizar y entender mejor estos problemas y que resulte más fácil optimizar los títulos así que actualizaciones a nuevas versiones del motor y parches de optimización ayudan a reducir esta problemática.
Pero como siempre que las cosas están en manos de los esfuerzos de personas e intereses económicos no siempre se va a solucionar bien así que Microsoft decidió aportar su granito de arena introduciendo Advanced Shader Delivery, que no deja de ser una tecnología que recopila los datos de shaders de cualquier juego y los empaqueta en un nuevo formato estandarizado conocido como State Object Database (SODB), vamos ocupar un extra de espacio en nuestra unidad con shaders ya compiladas.

Como ocurre en muchas ocasiones las soluciones van más lentas que los problemas así que aún nos queda algo de tiempo para ver qué ocurre con esta nueva función: Microsoft dijo que lo tendría listo para la ASUS ROG Xbox Ally además de ofrecerlo a través de la Xbox Store junto con el juego algo que no sabemos a cuantos usuarios les servirá. El estreno de la nueva consola Ally está a la vuelta de la esquina y ahí podremos ver qué tal funciona esta nueva tecnología en un entorno limitado.
Sin embargo el paso más importante ya se ha realizado puesto que Microsoft ha liberado la versión 1.618 del kit de desarrollo Agility de DirectX 12 en la que se incluye el soporte para Advanced Shader Delivery, así que los desarrolladores que migren a la nueva versión del SDK de Microsoft podrán incorporar esta tecnología en sus proyectos.
Eso sí, también es necesaria la colaboración de los fabricantes de hardware algo que está de camino puesto que cada fabricante está ultimando controladores y herramientas para poder usar esta tecnología con su hardware, AMD, Intel, NVIDIA y Qualcomm se han pronunciado sobre esto y si bien están comprometidos en ofrecer su apoyo parece que de momento sólo hay controladores beta o preview para ello, así que aún nos quedan meses para ver los frutos de esta tecnología y posiblemente hasta la llegada de nuevos títulos no veamos su adopción masiva.
Así han se han pronunciado las compañías mencionadas al respecto:
AMD:
AMD compiler plugin support is available in the AMD Software: AgilitySDK Developer Preview Edition 25.10.07.01 Sept 25 Update
Intel:
Intel is excited to partner with Microsoft in providing a console-like shader compilation experience to gamers on PC. Game developers can look for our offline compiler and driver support in November later this year.
Qualcomm:
The advanced shader delivery feature marks a significant breakthrough in elevating the gaming experience. We’re excited about its potential and are actively collaborating with our ecosystem partners to bring this capability to Adreno GPUs. Stay tuned as we work to bring this innovation to life.
Nvidia:
“By collaborating with Microsoft to implement support for advanced shader delivery, NVIDIA is equipping game developers with tools to improve game load times and deliver a stutter-free experience for gamers.” – Henry Lin, Director of Product Management, Gaming & AI at NVIDIA.