diff --git a/base/vulkanexamplebase.cpp b/base/vulkanexamplebase.cpp index 95b6c1b1..dbe3c778 100644 --- a/base/vulkanexamplebase.cpp +++ b/base/vulkanexamplebase.cpp @@ -212,67 +212,6 @@ VkPipelineShaderStageCreateInfo VulkanExampleBase::loadShader(std::string fileNa return shaderStage; } -VkBool32 VulkanExampleBase::createBuffer(VkBufferUsageFlags usageFlags, VkMemoryPropertyFlags memoryPropertyFlags, VkDeviceSize size, void * data, VkBuffer * buffer, VkDeviceMemory * memory) -{ - VkMemoryRequirements memReqs; - VkMemoryAllocateInfo memAlloc = vkTools::initializers::memoryAllocateInfo(); - VkBufferCreateInfo bufferCreateInfo = vkTools::initializers::bufferCreateInfo(usageFlags, size); - - VK_CHECK_RESULT(vkCreateBuffer(device, &bufferCreateInfo, nullptr, buffer)); - - vkGetBufferMemoryRequirements(device, *buffer, &memReqs); - memAlloc.allocationSize = memReqs.size; - memAlloc.memoryTypeIndex = vulkanDevice->getMemoryType(memReqs.memoryTypeBits, memoryPropertyFlags); - VK_CHECK_RESULT(vkAllocateMemory(device, &memAlloc, nullptr, memory)); - if (data != nullptr) - { - void *mapped; - VK_CHECK_RESULT(vkMapMemory(device, *memory, 0, size, 0, &mapped)); - memcpy(mapped, data, size); - vkUnmapMemory(device, *memory); - } - VK_CHECK_RESULT(vkBindBufferMemory(device, *buffer, *memory, 0)); - - return true; -} - -VkBool32 VulkanExampleBase::createBuffer(VkBufferUsageFlags usage, VkDeviceSize size, void * data, VkBuffer *buffer, VkDeviceMemory *memory) -{ - return createBuffer(usage, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, size, data, buffer, memory); -} - -VkBool32 VulkanExampleBase::createBuffer(VkBufferUsageFlags usage, VkDeviceSize size, void * data, VkBuffer * buffer, VkDeviceMemory * memory, VkDescriptorBufferInfo * descriptor) -{ - VkBool32 res = createBuffer(usage, size, data, buffer, memory); - if (res) - { - descriptor->offset = 0; - descriptor->buffer = *buffer; - descriptor->range = size; - return true; - } - else - { - return false; - } -} - -VkBool32 VulkanExampleBase::createBuffer(VkBufferUsageFlags usage, VkMemoryPropertyFlags memoryPropertyFlags, VkDeviceSize size, void * data, VkBuffer * buffer, VkDeviceMemory * memory, VkDescriptorBufferInfo * descriptor) -{ - VkBool32 res = createBuffer(usage, memoryPropertyFlags, size, data, buffer, memory); - if (res) - { - descriptor->offset = 0; - descriptor->buffer = *buffer; - descriptor->range = size; - return true; - } - else - { - return false; - } -} - void VulkanExampleBase::loadMesh(std::string filename, vkMeshLoader::MeshBuffer * meshBuffer, std::vector vertexLayout, float scale) { vkMeshLoader::MeshCreateInfo meshCreateInfo; diff --git a/base/vulkanexamplebase.h b/base/vulkanexamplebase.h index 3738f585..09124154 100644 --- a/base/vulkanexamplebase.h +++ b/base/vulkanexamplebase.h @@ -289,39 +289,6 @@ public: // Load a SPIR-V shader VkPipelineShaderStageCreateInfo loadShader(std::string fileName, VkShaderStageFlagBits stage); - // Create a buffer, fill it with data (if != NULL) and bind buffer memory - VkBool32 createBuffer( - VkBufferUsageFlags usageFlags, - VkMemoryPropertyFlags memoryPropertyFlags, - VkDeviceSize size, - void *data, - VkBuffer *buffer, - VkDeviceMemory *memory); - // This version always uses HOST_VISIBLE memory - VkBool32 createBuffer( - VkBufferUsageFlags usage, - VkDeviceSize size, - void *data, - VkBuffer *buffer, - VkDeviceMemory *memory); - // Overload that assigns buffer info to descriptor - VkBool32 createBuffer( - VkBufferUsageFlags usage, - VkDeviceSize size, - void *data, - VkBuffer *buffer, - VkDeviceMemory *memory, - VkDescriptorBufferInfo *descriptor); - // Overload to pass memory property flags - VkBool32 createBuffer( - VkBufferUsageFlags usage, - VkMemoryPropertyFlags memoryPropertyFlags, - VkDeviceSize size, - void *data, - VkBuffer *buffer, - VkDeviceMemory *memory, - VkDescriptorBufferInfo *descriptor); - // Load a mesh (using ASSIMP) and create vulkan vertex and index buffers with given vertex layout void loadMesh( std::string fiename,