#pragma once #include "cve_pipeline.hpp" #include "cve_device.hpp" #include "cve_game_object.hpp" #include #include namespace cve { class SimpleRenderSystem { public: SimpleRenderSystem(CveDevice &device, VkRenderPass renderPass); ~SimpleRenderSystem(); SimpleRenderSystem(const SimpleRenderSystem &) = delete; SimpleRenderSystem &operator=(const SimpleRenderSystem &) = delete; void renderGameObjects(VkCommandBuffer commandBuffer, std::vector& gameObjects); private: void createPipelineLayout(); void createPipeline(VkRenderPass renderPass); CveDevice& cveDevice; std::unique_ptr cvePipeline; VkPipelineLayout pipelineLayout; }; }