improved CreateSwapchain function that it should not use surface caps data.

This commit is contained in:
hyzboy 2021-12-15 19:55:50 +08:00
parent d98acda22e
commit 57c10fdcba

View File

@ -5,15 +5,15 @@
VK_NAMESPACE_BEGIN VK_NAMESPACE_BEGIN
namespace namespace
{ {
VkExtent2D SwapchainExtentClamp(const VkSurfaceCapabilitiesKHR &surface_caps,const VkExtent2D &acquire_extent) //VkExtent2D SwapchainExtentClamp(const VkSurfaceCapabilitiesKHR &surface_caps,const VkExtent2D &acquire_extent)
{ //{
VkExtent2D swapchain_extent; // VkExtent2D swapchain_extent;
swapchain_extent.width =hgl_clamp(acquire_extent.width, surface_caps.minImageExtent.width, surface_caps.maxImageExtent.width ); // swapchain_extent.width =hgl_clamp(acquire_extent.width, surface_caps.minImageExtent.width, surface_caps.maxImageExtent.width );
swapchain_extent.height =hgl_clamp(acquire_extent.height, surface_caps.minImageExtent.height, surface_caps.maxImageExtent.height ); // swapchain_extent.height =hgl_clamp(acquire_extent.height, surface_caps.minImageExtent.height, surface_caps.maxImageExtent.height );
return swapchain_extent; // return swapchain_extent;
} //}
VkSwapchainKHR CreateSwapChain(const GPUDeviceAttribute *dev_attr,const VkExtent2D &extent) VkSwapchainKHR CreateSwapChain(const GPUDeviceAttribute *dev_attr,const VkExtent2D &extent)
{ {
@ -96,7 +96,7 @@ bool GPUDevice::CreateSwapchain(const VkExtent2D &acquire_extent)
swapchain=new Swapchain; swapchain=new Swapchain;
swapchain->device =attr->device; swapchain->device =attr->device;
swapchain->extent =SwapchainExtentClamp(attr->surface_caps,acquire_extent); swapchain->extent =acquire_extent;
swapchain->graphics_queue =attr->graphics_queue; swapchain->graphics_queue =attr->graphics_queue;
swapchain->swap_chain =CreateSwapChain(attr,swapchain->extent); swapchain->swap_chain =CreateSwapChain(attr,swapchain->extent);