#include <string>
#include <vector>
+#include "allocator.h"
#include "vkutil.h"
/* global variables */
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;
}
void vku_destroy_buffer(struct vku_buffer *buf)
{
if(buf) {
+ //TODO change when the allocator changes
+ vku_free(buf->mem_pool);
+
vkDestroyBuffer(vk_device, buf->buf, 0);
delete buf;
}