Skip to main content

VKSurface

The VKSurface class extends the Surface class to provide Vulkan-specific functionality for managing a rendering surface. It includes methods for interacting with Vulkan instances, physical devices, logical devices, command buffers, and queues, enabling rendering operations in the context of Vulkan. The class supports managing images, image views, render passes, and framebuffers, which are essential for rendering operations.

#include <platform/TellusimSurface.h>

Inheritance

Constructors

VKSurface()
explicit VKSurface(VKContext &context)

Methods

Current device.

VkInstance getInstance() const
VkPhysicalDevice getAdapter() const
VkDevice getDevice() const
VkQueue getQueue() const
VkCommandBuffer getCommand() const
uint32_t getFamily() const

Image handles.

void setColorImage(VkImage image)
void setDepthImage(VkImage image)
VkImage getColorImage() const
VkImage getDepthImage() const

Image view handles.

void setColorImageView(VkImageView image_view)
void setDepthImageView(VkImageView image_view)
VkImageView getColorImageView() const
VkImageView getDepthImageView() const

Framebuffer handle.

void setRenderPass(VkRenderPass render_pass)
void setFramebuffer(VkFramebuffer framebuffer)
VkRenderPass getRenderPass() const
VkFramebuffer getFramebuffer() const

Surface formats.

uint32_t getColorPixelFormat() const
uint32_t getDepthPixelFormat() const