Crate gfx_backend_vulkan

Source
Expand description

§Vulkan backend internals.

§Stack memory

Most of the code just passes the data through. The only problem that affects all the pieces is related to memory allocation: Vulkan expects slices, but the API gives us Iterator. So we end up using a lot of inplace_it to get things collected on stack.

§Framebuffers

One part that has actual logic is related to framebuffers. HAL is modelled after image-less framebuffers. If the the Vulkan implementation supports it, we map it 1:1, and everything is great. If it doesn’t expose KHR_imageless_framebuffer, however, than we have to keep all the created framebuffers internally in an internally-synchronized map, per B::Framebuffer. !

Structs§

Enums§

Type Aliases§