Crate gpu_descriptor[][src]

Expand description

Library for Vulkan-like APIs to allocated descriptor sets from descriptor pools fast, with least overhead and zero fragmentation.

Straightforward usage:

use gpu_descriptor::DescriptorAllocator;

let mut allocator = DescriptorAllocator::new(max_update_after_bind_descriptors_in_all_pools); // Limit as dictated by API for selected hardware

let result = allocator.allocate(
    device, // Implementation of `gpu_descriptor::DescriptorDevice`. Comes from plugins.
    layout, // Descriptor set layout recognized by device's type.
    flags,  // Flags specified when layout was created.
    layout_descriptor_count, // Descriptors count in the layout.
    count, // count of sets to allocated.


Descriptor allocator. Can be used to allocate descriptor sets for any layout.

Flags to augment descriptor pool creation.

Descriptor set from allocator.

Flags to augment descriptor set allocation.

Number of descriptors of each type.


AllocationError that may occur during descriptor sets allocation.

Memory exhausted error.

Memory exhausted error.


Abstract device that can create pools of type P and allocate sets S with layout L.