These bindings use all the handy stuff from Vulkan-Hpp
: wrapper classes, type safe enums, std::vector
s, Optional
etc. They are generated by the generator used by Vulkan-Hpp
, that's why they look so similar.
Current VMA version: 2.3.0
Warning: The bindings are not thoroughly tested yet. If you encounter any errors, please open an issue: https://github.com/malte-v/VulkanMemoryAllocator-Hpp/issues/new
Just copy vk_mem_alloc.h and vk_mem_alloc.hpp to your project.
// In *one* source file:
#define VMA_IMPLEMENTATION
#include "vk_mem_alloc.hpp"
If you don't like the vma::
prefix:
#define VMA_HPP_NAMESPACE <prefix>
If you have access to c++20 compiler and want to take advantage of designated initializers:
#define VMA_HPP_NO_STRUCT_CONSTRUCTORS
See Vulkan-HPP readme.