From: Jean-Philippe Bruyère Date: Sun, 31 May 2020 00:03:32 +0000 (+0200) Subject: get swapchain size X-Git-Url: https://git.osiis.dedyn.io/?a=commitdiff_plain;h=5fceb3c80d9ac2c22b632ab78325933d1fa7f9d9;p=jp%2Fvkhelpers.git get swapchain size --- diff --git a/include/vkh.h b/include/vkh.h index c0f9b7a..2d9af36 100644 --- a/include/vkh.h +++ b/include/vkh.h @@ -122,6 +122,7 @@ bool vkh_presenter_draw (VkhPresenter r); bool vkh_presenter_acquireNextImage (VkhPresenter r, VkFence fence, VkSemaphore semaphore); void vkh_presenter_build_blit_cmd (VkhPresenter r, VkImage blitSource, uint32_t width, uint32_t height); void vkh_presenter_create_swapchain (VkhPresenter r); +void vkh_presenter_get_size (VkhPresenter r, uint32_t* pWidth, uint32_t* pHeight); /************ * VkhImage * ************/ diff --git a/src/vkh_presenter.c b/src/vkh_presenter.c index 250c3d1..063e00c 100644 --- a/src/vkh_presenter.c +++ b/src/vkh_presenter.c @@ -111,7 +111,7 @@ bool vkh_presenter_draw (VkhPresenter r) { .pImageIndices = &r->currentScBufferIndex }; /* Make sure command buffer is finished before presenting */ - VK_CHECK_RESULT(vkQueuePresentKHR(r->queue, &present)); + vkQueuePresentKHR(r->queue, &present); return true; } @@ -153,7 +153,10 @@ void vkh_presenter_build_blit_cmd (VkhPresenter r, VkImage blitSource, uint32_t vkh_cmd_end(cb); } } - +void vkh_presenter_get_size (VkhPresenter r, uint32_t* pWidth, uint32_t* pHeight){ + *pWidth = r->width; + *pHeight = r->height; +} void _init_phy_surface(VkhPresenter r, VkFormat preferedFormat, VkPresentModeKHR presentMode){ uint32_t count; VK_CHECK_RESULT(vkGetPhysicalDeviceSurfaceFormatsKHR (r->dev->phy, r->surface, &count, NULL)); @@ -260,6 +263,7 @@ void _swapchain_destroy (VkhPresenter r){ vkFreeCommandBuffers (r->dev->dev, r->cmdPool, 1, &r->cmdBuffs[i]); } vkDestroySwapchainKHR (r->dev->dev, r->swapChain, NULL); + r->swapChain = VK_NULL_HANDLE; free(r->ScBuffers); free(r->cmdBuffs); }