buffer allocation
[demo] / src / vulkan / vkutil.cc
index 526ec38..a64f86f 100644 (file)
@@ -7,6 +7,7 @@
 #include <string>
 #include <vector>
 
+#include "allocator.h"
 #include "vkutil.h"
 
 /* global variables */
@@ -443,7 +444,16 @@ struct vku_buffer *vku_create_buffer(int sz, unsigned int usage)
                fprintf(stderr, "failed to create %d byte buffer (usage: %x)\n", sz, usage);
                return 0;
        }
-       // TODO back with memory
+
+       VkMemoryRequirements mr;
+       vkGetBufferMemoryRequirements(vk_device, buf->buf, &mr);
+
+       DevMemBlock block;
+       if(!vku_allocate(mr.size, &block))
+               return 0;
+
+       buf->mem_pool = block.dev_mem;
+
        return buf;
 }