MangoHud

From LinuxReviews
Jump to navigationJump to search
Utilities-system-monitor-4.png

MangoHud is a modified version of the built-in Mesa heads up display for Vulkan. It is prettier and more configurable than the built-in Mesa HUD and it has handy keyboard shortcuts for turning the HUD (F12) and logging (F2) on/off. It is specially useful for games who play Windows games using Wine and DXVK.

Features And Usability

Vkmark-with-MangoHud.jpg
vkmark running with the MangoHud (MANGOHUD=1 vkmark -s 1200x600)

MangoHud can be enabled by launching applications with the environmental variable MANGOHUD=1:

MANGOHUD=1 vkmark -s 1200x600

It is possible to set MANGOHUD=1 in your shells profile but it is not a good idea.

How MangoHud looks can be configured with a environmental variable called MANGOHUD_CONFIG OR by editing the configuration file it installs in $HOME/.config/MangoHud/MangoHud.conf. This differs from the build-in Mesa Vulkan HUD which can only be configured using a environmental variable called VK_LAYER_MESA_OVERLAY_CONFIG=.

Vkmark-hud.jpg
vkmark with the build-in Mesa Vulkan HUD.

The MangoHud is arguably better-looking than the build-in Mesa Vulkan HUD.

MangoHud-vs-mesa-hud.jpg
MangoHud (left) vs the built-in Mesa HUD (right]

A side-by-side comparison gives the distinct impression that MangoHud is made by and for games who stream their video games while the Mesa Vulkan HUD is written by and for developers.

MangoHud is more configurable than the Mesa Vulkan HUD and it helps that it can be configured using a file. The default configuration file has helpful comments.

Verdict And Conclusion

MangoHud is a very nice heads up display for Vulkan games and applications. It is specially useful for those who play Windows games in Wine with DXVK translating the Direct3D calls to Vulkan. It is prettier than both the build-in Mesa Vulkan HUD and the built-in DXVK HUD.

The built-in F12 keyboard shortcut for toggling the MangoHUDs visibility is a nice touch which the other methods of displaying a HUD on Vulkan games and applications lack.

The ability to make logs which can be uploaded to flightlessmango.com and turned into nice detailed graphs is also a very nice touch.

The only downside MangoHud has is that you do have to install it. You already have the built-in Mesa Vulkan HUD if you can run Vulkan games and you have DXVKs HUD if you use DXVK. MangoHud isn't just there, you do have to install it. Doing so is worth it if you want a prettier heads up displays than those the alternatives provide.

Installation

Installation from source is rather easy. Just clone the repository,

git clone --recurse-submodules https://github.com/flightlessmango/MangoHud.git

then change into the directory it makes

cd MangoHud

and run the provided build script - which will also install it into your local user folder.

./build.sh install

The build script will prompt you if there are any missing dependencies and ask if you want it to automatically install them using sudo.

build.sh will build both i686 and x86-64 libraries. This means that it works fine with both native Vulkan applications and Windows games launched in Wine with DXVK.

The .so files for MangoHud is installed in $HOME/.local/share/MangoHud and the requires JSON files which make Mesa aware of its existence are placed in $HOME/.local/share/vulkan/implicit_layer.d/

Links

The source for MangoHud is available at github.com/flightlessmango/MangoHud.

The website flightlessmango.com has very nice charts which are generated using user-uploaded logs made by MangoHud.


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