Cargo Features

[dependencies]
bort-vma = { version = "0.3.4", default-features = false, features = ["generate_bindings", "linked", "loaded", "vulkan-1-3", "vulkan-1-2", "vulkan-1-1", "vulkan-1-0", "recording-enabled", "debug-always-dedicated-memory", "debug-initialize-allocations", "debug-global-mutex", "debug-dont-exceed-max-memory-allocation-count"] }
default = loaded

The loaded feature is set by default whenever bort-vma is added without default-features = false somewhere in the dependency tree.

generate_bindings = bindgen
linked

Enables linked of ash ^0.37

ash:

Link the Vulkan loader at compile time.

loaded default

Enables loaded of ash ^0.37

ash:

Support searching for the Vulkan loader manually at runtime.

vulkan-1-3

vma compile flags:

defines VMA_VULKAN_VERSION=1003000

vulkan-1-2

defines VMA_VULKAN_VERSION=1002000

vulkan-1-1

defines VMA_VULKAN_VERSION=1001000

vulkan-1-0

defines VMA_VULKAN_VERSION=1000000

recording-enabled

Enable VMA memory recording for debugging (equivilent to VMA_RECORDING_ENABLED cmake option).

debug-always-dedicated-memory

Every allocation will have its own memory block (equivilent to VMA_DEBUG_ALWAYS_DEDICATED_MEMORY cmake option).

debug-initialize-allocations

Automatically fill new allocations and destroyed allocations with some bit pattern (equivilent to VMA_DEBUG_INITIALIZE_ALLOCATIONS cmake option).

debug-global-mutex

Enable single mutex protecting all entry calls to the library (equivilent to VMA_DEBUG_GLOBAL_MUTEX cmake option).

debug-dont-exceed-max-memory-allocation-count

Never exceed VkPhysicalDeviceLimits::maxMemoryAllocationCount and return error (equivilent to VMA_DEBUG_DONT_EXCEED_MAX_MEMORY_ALLOCATION_COUNT cmake option).

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

bindgen build generate_bindings?