006 Métodos
006.6 Gráficos

2.2 Historia de Vulkan

La API de Vulkan fue diseñada y es mantenida por el Grupo Khronos para satisfacer las demandas actuales y futuras de lograr soluciones de procesamiento y renderizado de alto rendimiento. La API de Vulkan logra esto al permitir un mayor control de bajo nivel (explícitamente), alejándose de los parámetros/suposiciones “predeterminados” establecidos dentro del controlador. El desarrollador tiene que administrar la memoria, las actualizaciones de recursos, el procesamiento por lotes, la programación, etc. Por lo tanto, la API de Vulkan inicialmente parece verbosa y complicada debido a la gran cantidad de iniciación y administración (a través de parámetros y estructuras de funciones), pero esto es crucial para el éxito de Vulkan. También debe notarse que DirectX 12 de Microsoft sigue un diseño similar a Vulkan (control explícito de bajo nivel). Por ejemplo, anteriormente, “OpenGL” no abordaba el subprocesamiento múltiple y no estaba diseñado para admitir el paradigma concurrente y paralelo, lo que sería un problema grave en el entorno multihilo y multinúcleo actual. Sin embargo, la API de Vulkan está diseñada para explotar estos entornos multihilo (y es así como puede superar a las API anteriores).

2.2.1 Vulkan surge de las cenizas de Mantle

Mantle fue el esfuerzo de AMD por mejorar el área de las API de gráficos 3D, el software que impulsa casi todas las aplicaciones 3D en tiempo real modernas en la actualidad. Como creen AMD y otras figuras líderes de la industria, una mejor programación de GPU solucionará algunos de los problemas de vibración y actualización que aún afectan a las soluciones gráficas de alto rendimiento actuales. Uno de los esfuerzos principales de AMD con Mantle. Por supuesto, Mantle no tuvo tanto éxito como AMD había esperado. AMD, en un cambio de dirección, decidió respaldar la creación de un nuevo estándar de código abierto (Vulkan) donando su propia API para parte del trabajo preliminar.

La mayoría de las características de Mantle han sido absorbidas por Vulkan. Básicamente, se podría haber utilizado Mantle como banco de pruebas para desarrollar cambios innovadores para la próxima generación de API gráficas. Si bien Mantle en su forma original ya no existe, la API Vulkan es en realidad la próxima evolución de Mantle. AMD ya ha recomendado a los desarrolladores que cambien a DX12 o Vulkan API. Dado que DX12 es propietario, literalmente deja una API para el mundo abierto: Vulkan. Cuando una API estándar abierta es el nombre del juego, Vulkan es el camino a seguir, con el apoyo del grupo Khronos y otros desarrolladores líderes. Es importante destacar que, si bien Mantle fue el bebé de AMD, fue ignorado por Nvidia; sin embargo, no puede ignorar Vulkan, que se convertirá en la API multiplataforma abierta alternativa de facto a soluciones propietarias como DirectX.