| 15098 | } |
| 15099 | |
| 15100 | VkResult VmaAllocator_T::BindVulkanBuffer( |
| 15101 | VkDeviceMemory memory, |
| 15102 | VkDeviceSize memoryOffset, |
| 15103 | VkBuffer buffer, |
| 15104 | const void* pNext) const |
| 15105 | { |
| 15106 | if(pNext != VMA_NULL) |
| 15107 | { |
| 15108 | #if VMA_VULKAN_VERSION >= 1001000 || VMA_BIND_MEMORY2 |
| 15109 | if((m_UseKhrBindMemory2 || m_VulkanApiVersion >= VK_MAKE_VERSION(1, 1, 0)) && |
| 15110 | m_VulkanFunctions.vkBindBufferMemory2KHR != VMA_NULL) |
| 15111 | { |
| 15112 | VkBindBufferMemoryInfoKHR bindBufferMemoryInfo = { VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR }; |
| 15113 | bindBufferMemoryInfo.pNext = pNext; |
| 15114 | bindBufferMemoryInfo.buffer = buffer; |
| 15115 | bindBufferMemoryInfo.memory = memory; |
| 15116 | bindBufferMemoryInfo.memoryOffset = memoryOffset; |
| 15117 | return (*m_VulkanFunctions.vkBindBufferMemory2KHR)(m_hDevice, 1, &bindBufferMemoryInfo); |
| 15118 | } |
| 15119 | #endif // #if VMA_VULKAN_VERSION >= 1001000 || VMA_BIND_MEMORY2 |
| 15120 | |
| 15121 | return VK_ERROR_EXTENSION_NOT_PRESENT; |
| 15122 | } |
| 15123 | else |
| 15124 | { |
| 15125 | return (*m_VulkanFunctions.vkBindBufferMemory)(m_hDevice, buffer, memory, memoryOffset); |
| 15126 | } |
| 15127 | } |
| 15128 | |
| 15129 | VkResult VmaAllocator_T::BindVulkanImage( |
| 15130 | VkDeviceMemory memory, |