¿Puede la tecnología Mantle de AMD revolucionar los videojuegos para PC?
Primeras impresiones de Digital Foundry.
AMD anunció la semana pasada Mantle, una nueva API de bajo nivel para PC que ofrece a los desarrolladores de videojuegos la oportunidad de acceder de forma más directa al hardware gráfico, eliminando muchos de los cuellos de botella que evitan que el rendimiento de los juegos de PC alcance su máximo potencial. La nueva tecnología se presentó durante la conferencia GPU14 de AMD en Hawaii, y ha sido desarrollada en colaboración con DICE, el estudio de Electronic Arts. Battlefield 4 será el primer juego compatible con Mantle, gracias a una actualización cuya publicación está prevista para diciembre.
En un comunicado oficial se explica que "Mantle, una iniciativa de AMD para crear un nuevo modelo de programación gráfica que explote toda la capacidad de las GPUs modernas, permite a los desarrolladores hablar el lenguaje nativo la arquitectura Graphics Core Next (GCN) de AMD, proporcionando un nivel de optimización más profunda del hardware que ningún otro fabricante de tarjetas gráficas puede igualar".
"Como parte de esta iniciativa hemos trabajado con los desarrolladores más importantes para crear una especificación de la API y un driver gráfico asociado que permite usar este modelo en PCs con hardware basado en GCN. Mantle ha sido creado como respuesta a los requisitos de los creadores de videojuegos, así que el interés es muy alto".
Resumiendo, AMD ha maximizado el potencial de su tecnología gráfica permitiendo a los desarrolladores acceder a sus funciones directamente a través de una API. Trabajando junto a un driver especializado para la GPU, Mantle reemplaza por completo la capa DirectX 11 de Microsoft, una solución genérica de renderizado que históricamente ha infrautilizado la potencia del hardware gráfico.
Mantle parece tener bastante en común con la API GNM de PlayStation 4, ofreciendo acceso de bajo nivel a la GPU pero manteniendo un alto nivel de compatibilidad con el actual lenguaje de programación de pixel shaders de Microsoft, HLSL. No debe subestimarse el potencial de esta nueva propuesta, porque a partir de ahora se puede usar también en el PC buena parte del trabajo de optimización que se hace para las versiones de consola de títulos multiplataforma. Además, también se pueden explotar funciones específicas del hardware de AMD que ahora no se utilizan tanto - o que quizás directamente ni están implementadas - en DirectX.
"Mantle lleva el estilo de programación gráfica de las consolas al PC por primera vez. DICE promete un mayor rendimiento y una mejor experiencia jugable con Battlefield 4."
Sin embargo, es en lo referente al rendimiento donde podemos ver mejoras potencialmente radicales. Mantle ofrece a los desarrolladores acceso directo a la RAM gráfica por primera vez (actualmente todo se hace a través de la API DirectX), y nos prometen hasta nueve veces más llamadas por parte de la CPU. El gran incremento en este aspecto puede tener un profundo efecto en el rendimiento de renderizado convencional, pero también tiene potencial para reducir la pre-computación de ciertos elementos y que el resultado sean mundos más dinámicos, ricos e inmersivos.
AMD dejó entrever Mantle a los periodistas días antes de presentar la nueva tecnología, pero dio muy pocos detalles específicos. Nuestra impresión inicial es que la idea era sólida, pero que la implementación de todas las funciones de DirectX podía ser un problema. El anuncio oficial - presentado por Johan Andersson, el director técnico del motor Frostbite de DICE - despejó todas esas dudas. El propio Frostbite es uno de los motores DX11 más avanzados a día de hoy, y el hecho de que Mantle mueva Battlefield 4 no podía ser una prueba de estrés mejor. Andersson promete "más rendimiento y una mejor experiencia jugable" con la versión Mantle de Battlefield 4 para PC. La aparición de la nueva API, además, puede tener un profundo efecto positivo en el hardware Steambox de Valve.
"AMD tiene una oportunidad interesante con Mantle al estar en las dos consolas, pero dudo que Sony y Microsoft sean muy receptivas", escribía John Carmack antes de añadir que "considerando el empujón que puede dar Mantle a Steambox, MS y Sony pueden acabar siendo directamente hostiles con ello".
En realidad puede que esto sea un quebradero de cabeza no sólo a los fabricantes de consolas. Tradicionalmente AMD ha abogado por el código abierto por encima del propietario (recuerda OpenCL vs. CUDA, por ejemplo), pero en el caso de Mantle ha sido muy especifica a la hora de explicar que Mantle está diseñado alrededor de su propia arquitectura Graphics Core Next (GCN). En teoría esto coloca en una posición muy difícil a su gran rival, Nvidia, puesto que podríamos ver juegos clave obteniendo un rendimiento muy superior en tarjetas gráficas AMD que en su equivalente - a menudo más caro - de la gama Geforce. Incluso si Nvidia produce su propia API, faltará por ver si hay interés o presupuesto para ser compatible con ella. Por lo que sabemos desarrollar versiones para Mantle no será barato, y probablemente acabará limitado a juegos de gran presupuesto o títulos que usen middlewares como el Unreal Engine 4.
De hecho, puede que el propio DirectX esté en peligro. Los desarrolladores indie suelen optar por OpenGL como API porque les permite hacer ports para Mac, SteamOS, iOS o Android con mayor facilidad. La competencia de Mantle en el ámbito triple A puede hacer las cosas incómodas para Microsoft. AMD nos explicaba que parte del problema al que se han enfrentado siempre, y que les animó a desarrollar Mantle, es que Microsoft está tan centrada en hacer sus sistemas operativos que como consecuencia de ello el desarrollo de DirectX ha sido demasiado lento.
Es raro ver una innovación tan interesante en el mercado del PC como Mantle. Al unirse a DICE e integrarlo en Frostbite, AMD prácticamente tiene garantizado que los juegos más avanzados de Electronic Arts sean compatibles con esta tecnología, ya que todos ellos usan este motor. Pero, por supuesto, su éxito final dependerá del grado de compatibilidad y adopción. Eso es algo que podremos empezar a valorar cuando más detalles (como partners, presentaciones de desarrolladores, explicaciones técnicas y demos en vivo) se hagan públicos en el AMD Developer Summit, el cual se celebrará el próximo 11 de noviembre.
Traducción por Josep Maria Sempere.