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>