#pragma once #include #include #include class Buffer; enum class DescriptorSet { WORLD = 0, MESH = 1 }; class DescriptorPool { public: DescriptorPool(); ~DescriptorPool(); void bindBuffer(Buffer* buffer, VkDescriptorType type, DescriptorSet set, uint32_t binding); std::map sets; std::map setLayouts; private: VkDescriptorPool handle = VK_NULL_HANDLE; void createLayout(DescriptorSet set, const std::vector &bindings); };