vulkan_test2
diff src/vku.h @ 17:f8bd29f124a8
foo
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Wed, 27 Jun 2018 01:57:55 +0300 |
parents | 196122a2b8c2 |
children |
line diff
1.1 --- a/src/vku.h Tue Jun 26 08:42:12 2018 +0300 1.2 +++ b/src/vku.h Wed Jun 27 01:57:55 2018 +0300 1.3 @@ -19,6 +19,8 @@ 1.4 VkImageView *swapchain_views; 1.5 int next_swapchain_image; 1.6 VkFramebuffer *swapchain_framebuf; 1.7 +VkSemaphore swapchain_getimg_sem; 1.8 +VkCommandBuffer *swapchain_cmdbuf; 1.9 1.10 VkViewport vkvport; 1.11 VkRenderPass vkrpass; 1.12 @@ -45,13 +47,14 @@ 1.13 void vku_end_cmdbuf(VkCommandBuffer buf); 1.14 void vku_reset_cmdbuf(VkCommandBuffer buf); 1.15 1.16 -void vku_submit_cmdbuf(VkQueue q, VkCommandBuffer buf, VkFence done_fence); 1.17 +void vku_submit_cmdbuf(VkQueue q, VkCommandBuffer buf, VkSemaphore sem_wait, 1.18 + VkSemaphore sem_done, VkFence done_fence); 1.19 1.20 VkSwapchainKHR vku_create_swapchain(VkSurfaceKHR surf, int xsz, int ysz, int n, 1.21 VkFormat fmt, VkPresentModeKHR pmode, VkSwapchainKHR prev); 1.22 VkImage *vku_get_swapchain_images(VkSwapchainKHR sc, int *count); 1.23 -int vku_get_next_image(VkSwapchainKHR sc); 1.24 -void vku_present(VkSwapchainKHR sc, int img_idx); 1.25 +int vku_get_next_image(VkSwapchainKHR sc, VkSemaphore semdone); 1.26 +void vku_present(VkSwapchainKHR sc, int img_idx, VkSemaphore sem_wait); 1.27 1.28 VkImageView vku_create_view(VkImage img, VkFormat fmt); 1.29 void vku_destroy_view(VkImageView view); 1.30 @@ -71,6 +74,13 @@ 1.31 VkSubpassContents cont); 1.32 void vku_end_renderpass(VkCommandBuffer cmdbuf); 1.33 1.34 +VkSemaphore vku_create_semaphore(void); 1.35 +void vku_destroy_semaphore(VkSemaphore s); 1.36 + 1.37 +VkFence vku_create_fence(void); 1.38 +void vku_destroy_fence(VkFence f); 1.39 +void vku_wait_fence(VkFence f); 1.40 + 1.41 /* platform-specific */ 1.42 #ifdef VK_USE_PLATFORM_XLIB_KHR 1.43 #include <X11/Xlib.h>