vkBasalt

From LinuxReviews
Jump to navigationJump to search
vkBasalt
Original author(s)Georg Lehmann
Initial releaseOctober 20, 2019; 19 months ago (2019-10-20)
Repositorygithub.com/DadSchoorse/vkBasalt
Written inC++
Operating systemLinux
LicenseZlib License
Vulkan-logo.png

vkBasalt is a visual effects layer for games and applications rendering using Vulkan API. It comes with a five effects that can change the visual output in a range of ways. Using most of its effects will cut your FPS in half.

Additional effects can be added in the form of reshade fx shaders. There is a seperate repo for those.

Using effects vkBasalt provides is far from free; applying just one effect results in a performance-hit between 40% and 55%. More than one effect can be applied at once for an even larger performance-penalty.

Features And Usability

vkBasalt comes in the form of a library (libvkbasalt.so) and a JSON file that tells Vulkan that it is available as a layer (/usr/share/vulkan/implicit_layer.d/vkBasalt.json). It has to be manually configured, unless you install a third party GUI applications, and it has to be activated on a per-applications basis with:

ENABLE_VKBASALT=1 gamebinary

vkBasalt can be configured, by hand, in system-wide in /etc/vkBasalt.conf (likely where you will find a default configuratoin file) or /etc/vkBasalt/vkBasalt.conf or /usr/share/vkBasalt/vkBasalt.conf.

Per-user configuration can be done by creating a configuration file in $XDG_CONFIG_HOME/vkBasalt/vkBasalt.conf (probably ~/.config/vkBasalt/vkBasalt.conf).

GOverlay-configuring-vkBasalt-and-vkmark.jpg
You can use GOverlay to configure vkBasalt if you don't want to hand-edit configuration files.

Configuring vkBasalt by hand-editing the configuration files can be tiresome. There is, luckily, a very nice third party graphical configuration tool called GOverlay with support for MangoHud and vkBasalt. GOverlay can grab, install and configure the optional Reshade Fx shaders for you.

The Visual Effects

VkBasalt-nightvision.jpg
The vkmark texture benchmark with and without vkBasalt with a ReShadeFX night vision filter (it is not a built-in effect)

vkBasalt comes with five built-in effects:

cas Contrast Adaptive Sharpening
dls Denoised Luma Sharpening
fxaa Fast Approximate Anti-Aliasing
smaa Enhanced Subpixel Morphological Antialiasing
lut Color LookUp Table

11 more are currently available from the ReShade FX shaders repo at github.com/crosire/reshade-shaders.

Performance Penalties

The effects vkBasalt provides are not free, a performance-hit will occur. This is specially true if you enable more than one effect. The shaders in the ReShade FX shaders repo have an even larger impact.

vkBasalt vs vkmark --benchmark vertex -s 1920x1050
MSI RX 470 8 GiB

The "Color LookUp Table" effect is not included because using it results in a Segmentation fault.

Most of the effects cut performance in half. "Fast Approximate Anti-Aliasing" is an exception, it only cuts performance down to slightly less than two thirds (61.8%). That's better than half, but it isn't a good thing if you want to play a demanding game. Applying all the four working built-in effects at once (effects=cas:dls:fxaa:smaa) cuts performance down to 13.4%.

Verdict And Conclusion

vkBasalt is a bit fun to play around with for 5 minutes until you've tried all the effects. There are some that could, perhaps, be useful while playing games. The massive performance-penalty involved makes that a non-starter.

vkBasalt effects with a 50% performance-penalty are simply not practically useful. Perhaps more powerful graphics cards can handle it with a lower penalty, I don't have one. What I do know is that it slows things down tremendously if you have an older mid-range GPU like the MSI/AMD RX 470.

Links

vkBasalt doesn't have a website if its own. It does have a GitHub repo at github.com/DadSchoorse/vkBasalt.


Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.