X-Git-Url: http://git.mutantstargoat.com?a=blobdiff_plain;f=src%2Fvulkan%2Fallocator.cc;h=714b7cc9ec4fb2ecf29b7c336d9f59cd61441190;hb=22347bb45e427ea763295d77da0de0d2ef9c2395;hp=5228a722308351e27e8a0e1660baae737cb9e6ac;hpb=8fb0cca684e078cd2537070c53ad970ebbc2e9a7;p=demo diff --git a/src/vulkan/allocator.cc b/src/vulkan/allocator.cc index 5228a72..714b7cc 100644 --- a/src/vulkan/allocator.cc +++ b/src/vulkan/allocator.cc @@ -5,7 +5,7 @@ #include "vk.h" #include "vkutil.h" -VkDeviceMemory vk_allocate(int size) +bool vku_allocate(int size, DevMemBlock *block) { VkDeviceMemory gpu_mem; @@ -15,9 +15,18 @@ VkDeviceMemory vk_allocate(int size) gpu_alloc_inf.allocationSize = size; if(vkAllocateMemory(vk_device, &gpu_alloc_inf, 0, &gpu_mem) != VK_SUCCESS) { - fprintf(stderr, "Failed to allocate device memory, mem size: %d\n"); - return 0; + fprintf(stderr, "Failed to allocate device memory, mem size: %d\n", size); + return false; } - return gpu_mem; + block->dev_mem = gpu_mem; + block->offset = 0; + block->size = size; + + return true; +} + +void vku_free(VkDeviceMemory gpu_memory) +{ + vkFreeMemory(vk_device, gpu_memory, 0); }