Files
Seele/src/Engine/Graphics/Vulkan/VulkanAllocator.cpp
T

30 lines
861 B
C++
Raw Normal View History

2020-03-13 12:44:33 +01:00
#include "VulkanAllocator.h"
#include "VulkanGraphics.h"
Seele::VulkanAllocator::VulkanAllocator(PVulkanGraphics graphics)
: graphics(graphics)
{
vkGetPhysicalDeviceMemoryProperties(graphics->getPhysicalDevice(), &memProperties);
heaps.resize(memProperties.memoryHeapCount);
for (size_t i = 0; i < memProperties.memoryHeapCount; i++)
{
VkMemoryHeap memoryHeap = memProperties.memoryHeaps[i];
HeapInfo& heapInfo = heaps[i];
heapInfo.maxSize = memoryHeap.size;
2020-03-13 12:44:33 +01:00
}
for (size_t i = 0; i < memProperties.memoryTypeCount; i++)
{
VkMemoryType& type = memProperties.memoryTypes[i];
HeapInfo& heapInfo = heaps[type.heapIndex];
heapInfo.types.add(type);
2020-03-13 12:44:33 +01:00
}
}
Seele::VulkanAllocator::~VulkanAllocator()
{
}
Seele::PVulkanSubAllocation Seele::VulkanAllocator::allocate(uint64 size, VkMemoryPropertyFlags properties)
{
return PVulkanSubAllocation();
}