8 #include "vk_mem_alloc.h"
9 #include "renderutils.h"
15 #include <utility/dllexport.h>
16 #include <vulkan/vulkan_core.h>
21 class UniformBufferObject;
22 class SamplerInstance;
24 class DescriptorSetAllocator;
63 const DescriptorSet& acquire(
const std::vector<UniformBufferObject>& uniformBufferObjects,
int numStorageBufferObjects,
int numSamplers);
69 void release(
int frameIndex);
72 using DescriptorSetList = std::list<DescriptorSet>;
73 using DescriptorSetFrameList = std::vector<DescriptorSetList>;
77 VkDescriptorSetLayout mLayout;
78 DescriptorSetList mFreeList;
79 DescriptorSetFrameList mUsedList;