A libre-licensed software implementation of Vulkan has started up again. Originally started in c++ in 2017, for a reimplementation Rust has been chosen for its concurrency and memory-safety features, and Rust’s LLVM support makes it highly portable. With OpenGL having both llvmpipe and MesaGL for fallback and testing purposes, it seems strange that there does not exist a corresponding Reference Implementation for Vulkan: the only implementations available are in hardware, making it extremely challenging for anyone considering entering the market. Kazan helps fill that gap. Sponsorship of this entirely libre-licensed project welcomed.
MoltenVK 1.0.20 is out as the latest feature update to this Vulkan-over-Metal layer. With the MoltenVK 1.0.20 release there is support for several new extensions including VK_KHR_maintenance1, VK_KHR_shader_draw_parameters, VK_KHR_get_physical_device_properties2, and VK_KHR_push_descriptor. MoltenVK 1.0.20 also adds the ability to track and access supported/enabled extensions and has re-based its SPIRV-Cross code against upstream.
Earlier this month there was a report on a game studio finding their MoltenVK-using game rejected from Apple’s App Store. The situation is now resolved and Apple has allowed this Vulkan-over-Metal game into their iOS marketplace. Details on the issue and how it was resolved are set out in this Phoronix story.
A new pull request has been submitted to MoltenVK, the open-source project for mapping the Vulkan graphics/compute API over Apple’s Metal to run on iOS/macOS. This pull request is working to address the issue that caused at least one MoltenVK-using iPhone/iPad game to be rejected from the Apple App Store.
The X-Plane cross-platform flight simulator has been depending upon OpenGL for nearly two decades since the program first came into existence, but a port of its rendering engine to use the Vulkan API has been a work-in-progress. It looks like their Vulkan support is getting squared away as the company has tweeted this weekend they will be talking about Vulkan integration this weekend at the Flight Sim Expo in Las Vegas.
Yesterday Valve released Vulkan support for Dota 2 on macOS. Indeed, this first major game relying upon MoltenVK for mapping Vulkan over the Apple Metal drivers is delivering performance gains. Phoronix has started to post some benchmarks.
Qt 5.10 added support for ETC2 texture compression while for Qt 5.11 there is support for Khronos’ KTX texture container format. The KTX file format for OpenGL and OpenGL ES allows for supporting a wider-range of compression algorithms to suit more hardware/driver options. [source: Phoronix]
The AMD developers working on the official Vulkan Linux driver, AMDVLK, have just uploaded their revised code supporting Vulkan 1.1. With around 13,000 lines of new code, they have enabled Vulkan 1.1 support within their AMDVLK/XGL code-base.
With the release of Vulkan 1.1, you can download NVIDIA’s Vulkan beta driver for Windows and Linux. The Linux driver is version 387.42.05 and supports the new VK_KHR_multiview, VK_KHR_maintenance3, VK_KHR_device_group, and VK_KHR_device_group_creation extensions.
Intel has joined the party with NVIDIA and AMD in offering launch-day Linux driver support for the new Vulkan 1.1 update from The Khronos Group. This ANV Vulkan driver support continues targeting Broadwell “Gen 8” graphics hardware and newer. Learn more about the Intel drivers.
While current generation Linux games with current Linux GPU drivers using the Vulkan API rather than OpenGL may not be significantly faster with higher-end hardware right, the impact of this newer Khronos graphics API tends to be more profound on lower-end hardware, especially when it comes to lightening the load on the CPU. Following recent Pentium vs. Ryzen 3 Linux gaming tests, Phoronix carried out some fresh benchmarks looking at OpenGL vs. Vulkan on the Ryzen 3 1200 quad-core CPU with NVIDIA and Radeon graphics.
SDL 2.0.6 was released as the latest feature update for this widely-used library that allows for more cross-platform portability of applications and games centered around input, audio, and video helpers. SDL 2.0.6 features QNX7 support, an experimental JACK audio driver, a default Steam Controller mapping for Linux, updated game controller, and cross-platform Vulkan helpers.
vkDOOM3 adds a Vulkan renderer to DOOM 3 BFG Edition. It was written as an example of how to use Vulkan for writing something more sizable than simple recipes. It covers topics such as General Setup, Proper Memory & Resource Allocation, Synchronization, and Pipelines. (source)
After failing to get the initial Vulkan support in last year’s CryENGINE 5.3, the public preview of CryENGINE 5.4 is finally available and comes with initial support for the Vulkan graphics API. Learn more on Phoronix.