Skip to content

Runtime.RHI.Vulkan (Visera.Runtime.RHI.Vulkan)

Runtime.RHI.Vulkan is the RHI Vulkan backend: maps RHI handles, commands and sync to Vulkan VkImage, VkBuffer, VkCommandBuffer, VkPipeline. Handles Vulkan instance/device creation, queue selection, memory allocation (Allocator) and resource/pipeline create/destroy; sync via Fence and Semaphore.

Responsibilities

  • Resources: Allocator allocates device memory; Buffer, Image, Sampler, DescriptorSet/Layout, ShaderModule map to Vulkan; Pipeline (Compute/Render) with Cache and Layout manage pipeline state and descriptor layout.
  • Commands: CommandPool allocates CommandBuffer; recording and submit via Vulkan queue submit.
  • Synchronization: Sync module provides Fence (CPU waits GPU) and Semaphore (GPU–GPU) for frame sync and Present.
  • Loader: Loader loads Vulkan entry points; Attachment defines color and depth attachment Vulkan descriptors.

Submodules

Module Description
Allocator Device memory allocation.
Buffer, Image, Sampler Buffer, image, sampler.
CommandPool, CommandBuffer Command pool and command buffer.
DescriptorPool, DescriptorSet, DescriptorSetLayout Descriptor pool, set and layout.
Pipeline Pipeline (Cache, Layout, Compute, Render).
Sync Fence, Semaphore.
Loader, Common, Attachment Loader, common types, attachments.

See also