From 5fceb3c80d9ac2c22b632ab78325933d1fa7f9d9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jean-Philippe=20Bruy=C3=A8re?= Date: Sun, 31 May 2020 02:03:32 +0200 Subject: [PATCH] get swapchain size --- include/vkh.h | 1 + src/vkh_presenter.c | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) 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); } -- 2.47.3