42 void create(VkExtent2D actualExtent,
46 VkPresentModeKHR wantedPresentMode);
49 [[nodiscard]] VkSwapchainKHR getSwapChain()
const;
50 [[nodiscard]] std::vector<VkImage>
const& getSwapChainImages()
const;
51 [[nodiscard]] VkFormat getSwapChainImageFormat()
const;
52 [[nodiscard]] VkExtent2D getSwapChainExtent()
const;
54 [[nodiscard]] std::vector<VkImageView>
const& getSwapChainImageViews()
const;
58 static VkSurfaceFormatKHR chooseSwapSurfaceFormat(std::vector<VkSurfaceFormatKHR>
const& availableFormats);
59 static VkPresentModeKHR chooseSwapPresentMode(std::vector<VkPresentModeKHR>
const& availablePresentModes,
60 VkPresentModeKHR wantedPresentMode);
61 static VkExtent2D chooseSwapExtent(VkSurfaceCapabilitiesKHR
const& capabilities, VkExtent2D actualExtent);
64 void createImageViews();
66 VkSwapchainKHR g_swapChain;
67 std::vector<VkImage> g_swapChainImages;
68 VkFormat g_swapChainImageFormat;
69 VkExtent2D g_swapChainExtent;
71 std::vector<VkImageView> g_swapChainImageViews;
73 VkPresentModeKHR g_presentMode;