Files
RenderFramework/Src/RenderFramework/Vulkan/Deprecated/VulkanMemoryProperties.h
T
2025-09-10 04:09:26 +03:00

19 lines
572 B
C++

#pragma once
#include <vulkan/vulkan.h>
#include <cstdint>
#include <vector>
struct VulkanMemoryProperties : VkPhysicalDeviceMemoryProperties {
std::vector<std::uint32_t> findSuitableMemoryTypeIndices(VkMemoryPropertyFlags properties, std::uint32_t memoryTypeIndexMask = -1) {
std::vector<std::uint32_t> result;
for (std::uint32_t i = 0; i < memoryTypeCount; ++i){
if ((memoryTypeIndexMask & 1) != 0){
if ((memoryTypes[i].propertyFlags & properties) == properties){
result.push_back(i);
}
}
memoryTypeIndexMask >>= 1;
}
return result;
}
};