Best Vulkan wrapper / low-level graphics library?

This page summarizes the projects mentioned and recommended in the original post on /r/GraphicsProgramming

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • ash

    Vulkan bindings for Rust

  • I would not recommend vulkano, I would recommend ash, most serious projects that are targeting only vulkan (ie not using gfx-hal), use ash. Vulkano makes some odd decisions and their build process is a pain, if it works in c++, you might not be able to get it to work in Vulkano. Ash has the same exact dependencies you would need in a C++ rust project (ie just the vulkan sdk on windows), and most low level conversion stuff to rust (enums) is already done.

  • Open-Source Vulkan C++ API

    Open-Source Vulkan C++ API

  • How about Vulkan-Hpp? It's the official Khronos C++ wrapper around the Vulkan API, with lots of nice features to make using the API easier. I recommend reading their entire README to understand all the advantages of using it.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • magnum-examples

    Examples for the Magnum C++11 graphics engine

  • While the Vulkan wrapper layer isn't that well documented or advertised yet (to Magnum standards at least), there's a Vulkan Triangle example making use of the basic bits to get you an idea how it might feel like. Apart from that:

  • magnum

    Lightweight and modular C++11 graphics middleware for games and data visualization

  • (Sorry for a self-promo, hope that's fine.) If you don't mind being an early adopter and use something that's still undergoing heavy development and is not complete yet, I'm building a low-level Vulkan wrapper in Magnum. If you aren't familiar with Magnum yet, it's a C++11 library that has (among other things) a thin OpenGL/GLES/WebGL wrapper that removes the platform-specific extension hell and most of the boilerplate while still allowing you to work with the raw APIs if you need ... and the same is now being done for Vulkan.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts