The Raspberry Pi Foundation is collaborating with Igalia to work on everything related to graphics support for VideoCore VI GPU found in Raspberry Pi 4’s Broadcom BCM2711 SoC. This lead to OpenGL ES 3.1 conformance at the beginning of the year, and good progress with Raspberry Pi 4 Vulkan support.
There’s no plan to work on an official Vulkan driver for earlier Raspberry Pi boards with VideoCore IV GPU, but since the Raspberry Pi Foundation released open-source VideoCore IV driver and documentation several years ago, it’s, in theory, possible for skilled developers to improve on it. That’s exactly what Martin Thomas, an NVIDIA engineer, has done in his spare time, and after two years of work, a Vulkan driver for Raspberry Pi VideoCore IV board – RPi-VK-Driver – has been released on Github.
Pi-VK-Driver implements a subset of the Vulkan, and since it is not fully conformant to the standard it cannot technically be called a Vulkan driver as it lacks features such as GLSL shaders. However, it does implement MSAA support, low-level assembly shaders, and performance counters in a way that’s good enough to play vkQuake 3 (Vulkan) Quake 3 on a Raspberry Pi 3B+ at over 100 fps using 720p resolution.
VkQuake3 running at 100+ FPS on a @Raspberry_Pi 3B+ using the new low level RPi-VK-Driver pic.twitter.com/UhhYgQrAEi
— Martin Thomas (@0martint) June 19, 2020
RPi-VK-Driver will work on all Raspberry Pi boards and modules, except Raspberry Pi 4 that comes with the new VideoCore VI GPU. That includes the original Raspberry Pi board, Pi Zero, Raspberry Pi 2, and all Compute Modules.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.