projects
/
demo
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rewriting swapchain/image/allocation parts
[demo]
/
src
/
vulkan
/
vkutil.h
diff --git
a/src/vulkan/vkutil.h
b/src/vulkan/vkutil.h
index
853349f
..
396209f
100644
(file)
--- a/
src/vulkan/vkutil.h
+++ b/
src/vulkan/vkutil.h
@@
-4,23
+4,28
@@
#include <vulkan/vulkan.h>
#include <vector>
#include <vulkan/vulkan.h>
#include <vector>
-extern VkPipeline *vkgraphics_pipeline;
+extern VkPhysicalDevice vk_physical;
+extern VkDevice vk_device;
+extern VkCommandPool vk_pool;
+extern VkQueue vk_queue;
+extern VkSwapchainKHR vk_swapchain;
+extern VkSurfaceKHR vk_surface;
+
+extern VkPipeline *vkgparent_pipeline;
extern VkDescriptorSet *vkdescset;
extern VkFramebuffer *vkfbufs;
extern VkRenderPass vkrpass;
extern VkDescriptorSet *vkdescset;
extern VkFramebuffer *vkfbufs;
extern VkRenderPass vkrpass;
-extern VkSwapchainKHR vkswapchain;
-extern VkImage *vkswapchain_images;
-extern VkImageView *vkswapchain_views;
-extern int vknum_swapchain_images;
-extern VkSurfaceKHR vksurface;
extern VkInstance vkinst;
extern VkInstance vkinst;
-extern VkPhysicalDevice vkpdev;
-extern VkDevice vkdev;
-extern VkQueue vkq;
-extern VkCommandPool vkcmdpool;
extern VkCommandBuffer vkcmdbuf; /* primary command buffer */
extern int vkqfamily;
extern VkCommandBuffer vkcmdbuf; /* primary command buffer */
extern int vkqfamily;
-extern int vknext_swapchain_image;
+
+/* presentation */
+extern int vknum_swapchain_images;
+extern VkImage *vkswapchain_images;
+extern VkImageView *vkswapchain_views;
+extern int vk_curr_swapchain_image;
+extern VkSemaphore vk_img_avail_sema;
+extern VkSemaphore vk_rend_done_sema;
struct vku_buffer {
VkBuffer buf;
struct vku_buffer {
VkBuffer buf;
@@
-36,6
+41,9
@@
bool vku_have_device_extension(const char *name);
bool vku_create_device();
void vku_cleanup();
bool vku_create_device();
void vku_cleanup();
+/* semaphores */
+bool vku_create_semaphores();
+
/* command buffers */
VkCommandBuffer vku_alloc_cmdbuf(VkCommandPool pool, VkCommandBufferLevel level);
void vku_free_cmdbuf(VkCommandPool pool, VkCommandBuffer buf);
/* command buffers */
VkCommandBuffer vku_alloc_cmdbuf(VkCommandPool pool, VkCommandBufferLevel level);
void vku_free_cmdbuf(VkCommandPool pool, VkCommandBuffer buf);