Tutorial de Vulkan: introducción a la API de gráficos y cómputo

Fuentes: Vulkan tutorial: introduction to the graphics and compute API

Vulkan es una API de gráficos y cómputo desarrollada por el grupo Khronos, la misma organización detrás de OpenGL. Ofrece una abstracción mucho más explícita del hardware gráfico moderno que sus predecesoras, lo que se traduce en un mejor rendimiento y en un comportamiento del controlador más predecible frente a opciones como OpenGL o Direct3D. Comparte ideas con Direct3D 12 y Metal, pero añade la ventaja de ser totalmente multiplataforma: permite desarrollar para Windows, Linux y Android desde un mismo código.

La contrapartida es una API considerablemente más verbosa. Cada detalle —desde la creación del framebuffer inicial hasta la gestión de memoria de búferes e imágenes de texturas— debe configurarse desde cero por la aplicación. Vulkan está pensado para programadores entusiastas del rendimiento gráfico dispuesto a asumir ese trabajo extra; quienes prefieran un enfoque de más alto nivel pueden recurrir a motores como Unreal Engine o Unity, que internamente ya integran Vulkan.

Para seguir este tutorial se necesita una tarjeta gráfica compatible con Vulkan (NVIDIA, AMD, Intel o Apple Silicon mediante MoltenVK), experiencia con C++ —incluidos RAII e initializer lists—, un compilador con soporte razonable de C++17 (Visual Studio 2017 o superior, GCC 7+ o Clang 5+) y nociones básicas de gráficos 3D por computadora. El recorrido comienza con una visión general del funcionamiento de Vulkan, continúa con la configuración del SDK, GLM y GLFW en Windows o Ubuntu, y avanza hasta renderizar el primer triángulo, para luego ampliar el programa con transformaciones lineales, texturas y modelos 3D. Existen versiones alternativas del tutorial para Rust (Vulkano y Vulkanalia) y el código puede descargarse en EPUB o PDF.