5 #include <ThirdParty/Vulkan/Include/vulkan/vulkan.h> 12 #include <ThirdParty/glm/glm/glm.hpp> 13 #include <ThirdParty/EASTL-master/include/EASTL/shared_ptr.h> 19 class VulkanSpriteRenderer
22 VulkanSpriteRenderer(VulkanRenderer* renderer, VulkanLogicalDevice* device, VulkanDescriptorPool* descriptorPool);
23 ~VulkanSpriteRenderer();
25 void StartRender(VkCommandBuffer renderPassBuffer, glm::mat4 viewMatrix, glm::mat4 projectionMatrix);
27 void RenderSprite(eastl::weak_ptr<VulkanTexture> texture, glm::mat4 modelMatrix);
36 eastl::unique_ptr<VulkanPipeline> renderPassPipeline;
38 eastl::unique_ptr<VulkanBuffer> uboBuffer;
39 eastl::unique_ptr<VulkanBuffer> vertexBuffer;
40 eastl::unique_ptr<VulkanBuffer> indexBuffer;
42 eastl::vector<uint32_t> indices;
60 VulkanRenderer* renderer;
61 VulkanLogicalDevice* device;
62 VulkanDescriptorPool* descriptorPool;
64 VkDescriptorSet renderUboDescriptorSet;
66 VkCommandBuffer renderCommandBuffer;
73 #endif // USING_VULKAN