Vulkan is an application programming interface (API) designed for rendering 3D graphics in applications and video games. It gives developers more direct access to a computer's GPU than older APIs, which can improve efficiency and 3D performance. Vulkan is a cross-platform API supported by computers and mobile devices. It was developed by the Khronos Group, an industry group focused on open standards for 3D graphics, and was first introduced in 2016.
Like other 3D graphics APIs, Vulkan helps game developers tell a computer's GPU how to draw and animate 3D models and environments. It provides a standard way to send commands to the GPU, like how to build a 3D shape out of polygons, map textures to it, and combine shapes into a 3D environment.
However, unlike older APIs, Vulkan is a low-level API that provides developers direct access to the GPU hardware. High-level APIs, like OpenGL, provide a library of functions that games can call on to manipulate 3D objects. This creates a layer of abstraction between game software and the GPU through a driver and requires the CPU to translate API calls into GPU instructions. Vulkan removes most of that abstraction by providing more direct access to the GPU and VRAM. Game developers have to write or import more functions into their source code, making it more complicated, but this allows them to optimize their games for better 3D performance while reducing the work needed from the CPU.
Since it is cross-platform, Vulkan allows game developers to use the same graphics code in different versions of their game. Windows, Linux, and Android support the Vulkan API directly, while macOS and iOS support it through a wrapper that translates Vulkan commands to Apple's Metal API.