This crate provides auto generated ash-style bindings to the beloved Vulkan Memory Allocator.
Every VMA struct has an associated builder
just like ash structs:
use ash_mem_alloc::vma;
let info = vma::AllocatorCreateInfo::builder()
.device(device.handle())
.instance(instance.handle())
.physical_device(physical_device)
.vulkan_functions(&functions);
While certain convenience features are implemented, all functions are unsafe and operate on raw Vma
and Vk
handles, just like in ash
.
For the most part, functions will generally behave as one would expect from identical ash
functions.