Crate gfx_backend_vulkan[−][src]
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
Device | |
Instance | |
PhysicalDevice | |
PhysicalDeviceFeatures | Aggregate of the |
PhysicalDeviceInfo | Information gathered about a physical device. Used to |
Queue | |
QueueFamily | |
RawInstance | |
Version | Helper wrapper around |
Enums
Backend | |
DebugMessenger |
Type Definitions
RawCommandQueue |