#include <VulkanSwapChain.h>
Definition at line 31 of file VulkanSwapChain.h.
◆ acquireNextImage()
VkResult VulkanSwapChain::acquireNextImage |
( |
VkSemaphore | presentCompleteSemaphore, |
|
|
uint32_t * | imageIndex ) |
Acquires the next image in the swap chain
- Parameters
-
presentCompleteSemaphore | (Optional) Semaphore that is signaled when the image is ready for use |
imageIndex | Pointer to the image index that will be increased if the next image could be acquired |
- Note
- The function will always wait until the next image has been acquired by setting timeout to UINT64_MAX
- Returns
- VkResult of the image acquisition
Definition at line 368 of file VulkanSwapChain.cpp.
◆ cleanup()
void VulkanSwapChain::cleanup |
( |
| ) |
|
◆ connect()
void VulkanSwapChain::connect |
( |
VkInstance | instance, |
|
|
VkPhysicalDevice | physicalDevice, |
|
|
VkDevice | device ) |
Set instance, physical and logical device to use for the swapchain and get all required function pointers
- Parameters
-
instance | Vulkan instance to use |
physicalDevice | Physical device used to query properties and formats relevant to the swapchain |
device | Logical representation of the device to create the swapchain for |
Definition at line 163 of file VulkanSwapChain.cpp.
◆ create()
void VulkanSwapChain::create |
( |
uint32_t * | width, |
|
|
uint32_t * | height, |
|
|
bool | vsync = false ) |
Create the swapchain and get its images with given width and height
- Parameters
-
width | Pointer to the width of the swapchain (may be adjusted to fit the requirements of the swapchain) |
height | Pointer to the height of the swapchain (may be adjusted to fit the requirements of the swapchain) |
vsync | (Optional) Can be used to force vsync-ed rendering (by using VK_PRESENT_MODE_FIFO_KHR as presentation mode) |
Definition at line 187 of file VulkanSwapChain.cpp.
◆ queuePresent()
VkResult VulkanSwapChain::queuePresent |
( |
VkQueue | queue, |
|
|
uint32_t | imageIndex, |
|
|
VkSemaphore | waitSemaphore = VK_NULL_HANDLE ) |
Queue an image for presentation
- Parameters
-
queue | Presentation queue for presenting the image |
imageIndex | Index of the swapchain image to queue for presentation |
waitSemaphore | (Optional) Semaphore that is waited on before the image is presented (only used if != VK_NULL_HANDLE) |
- Returns
- VkResult of the queue presentation
Definition at line 384 of file VulkanSwapChain.cpp.
◆ buffers
◆ colorFormat
VkFormat VulkanSwapChain::colorFormat |
◆ colorSpace
VkColorSpaceKHR VulkanSwapChain::colorSpace |
◆ device
VkDevice VulkanSwapChain::device |
|
private |
◆ fpAcquireNextImageKHR
PFN_vkAcquireNextImageKHR VulkanSwapChain::fpAcquireNextImageKHR |
|
private |
◆ fpCreateSwapchainKHR
PFN_vkCreateSwapchainKHR VulkanSwapChain::fpCreateSwapchainKHR |
|
private |
◆ fpDestroySwapchainKHR
PFN_vkDestroySwapchainKHR VulkanSwapChain::fpDestroySwapchainKHR |
|
private |
◆ fpGetPhysicalDeviceSurfaceCapabilitiesKHR
PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR VulkanSwapChain::fpGetPhysicalDeviceSurfaceCapabilitiesKHR |
|
private |
◆ fpGetPhysicalDeviceSurfaceFormatsKHR
PFN_vkGetPhysicalDeviceSurfaceFormatsKHR VulkanSwapChain::fpGetPhysicalDeviceSurfaceFormatsKHR |
|
private |
◆ fpGetPhysicalDeviceSurfacePresentModesKHR
PFN_vkGetPhysicalDeviceSurfacePresentModesKHR VulkanSwapChain::fpGetPhysicalDeviceSurfacePresentModesKHR |
|
private |
◆ fpGetPhysicalDeviceSurfaceSupportKHR
PFN_vkGetPhysicalDeviceSurfaceSupportKHR VulkanSwapChain::fpGetPhysicalDeviceSurfaceSupportKHR |
|
private |
◆ fpGetSwapchainImagesKHR
PFN_vkGetSwapchainImagesKHR VulkanSwapChain::fpGetSwapchainImagesKHR |
|
private |
◆ fpQueuePresentKHR
PFN_vkQueuePresentKHR VulkanSwapChain::fpQueuePresentKHR |
|
private |
◆ imageCount
uint32_t VulkanSwapChain::imageCount |
◆ images
std::vector<VkImage> VulkanSwapChain::images |
◆ instance
VkInstance VulkanSwapChain::instance |
|
private |
◆ physicalDevice
VkPhysicalDevice VulkanSwapChain::physicalDevice |
|
private |
◆ queueNodeIndex
uint32_t VulkanSwapChain::queueNodeIndex = UINT32_MAX |
◆ surface
VkSurfaceKHR VulkanSwapChain::surface |
|
private |
◆ swapChain
VkSwapchainKHR VulkanSwapChain::swapChain = VK_NULL_HANDLE |
The documentation for this class was generated from the following files: