Search code examples
graphicstexturesrenderingframebuffervulkan

Vulkan - draw texture directly without vertices and shaders


Is it possible to draw texture (if it is with correct width, height and pixel format) directly to frame buffer without using vertices and shaders in Vulkan?


Solution

  • You can do a vkCmdCopyImage to copy from your vkImage to a swapchain's vkImage provided the vkSurface supports being a TRANSFER_DST as by the supportedUsageFlags field from the result of vkGetPhysicalDeviceSurfaceCapabilitiesKHR.

    Otherwise you need to do a fullscreen render and grab the color data from the input image as a sampled texture or input attachment.