vkGetSwapchainImagesKHR
函数原型
VkResult vkGetSwapchainImagesKHR(
VkDevice device,
VkSwapchainKHR swapchain,
uint32_t* pSwapchainImageCount,
VkImage* pSwapchainImages);
描述
获得与交换链关联的可显式图像。
参数
-
device
: 与交换链关联的逻辑设备。 -
swapchain
: 获取图像的交换链。 -
pSwapchainImageCount
: 可呈现图像数量的指针。 -
pSwapchainImages
: NULL或者VkImage
结构体数组指针。- 当
pSwapchainImages
为NULL时,pSwapchainImageCount
返回可显示图像数量; - 当
pSwapchainImages
不为NULL时,返回pSwapchainImageCount
个可显示图像到pSwapchainImages
中。
- 当
返回值
无
代码示例
VkSurfaceCapabilitiesKHR capabilities;
// 查询基础表面特性
vkGetPhysicalDeviceSurfaceCapabilitiesKHR(device, surface, &capabilities);
// 交换链支持的最小图像个数+1数量类实现三倍缓存
uint32_t imageCount = capabilities.minImageCount + 1;
vkGetSwapchainImagesKHR(device, swapChain, &imageCount, nullptr);
// 交换链图像句柄
vector<VkImage> swapChainImages;
swapChainImages.resize(imageCount);
vkGetSwapchainImagesKHR(device, swapChain, &imageCount, swapChainImages.data());