30 lines
758 B
C++
30 lines
758 B
C++
#pragma once
|
|
|
|
#include "cve_pipeline.hpp"
|
|
#include "cve_device.hpp"
|
|
#include "cve_game_object.hpp"
|
|
|
|
#include <memory>
|
|
#include <vector>
|
|
|
|
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<CveGameObject>& gameObjects);
|
|
|
|
private:
|
|
void createPipelineLayout();
|
|
void createPipeline(VkRenderPass renderPass);
|
|
|
|
CveDevice& cveDevice;
|
|
std::unique_ptr<CvePipeline> cvePipeline;
|
|
VkPipelineLayout pipelineLayout;
|
|
};
|
|
}
|