Files
RenderFramework/Src/RenderFramework/Vulkan/Deprecated/VulkanMemoryProperties.h
T

19 lines
572 B
C++
Raw Normal View History

2025-05-13 02:24:09 +03:00
#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;
}
};