summaryrefslogtreecommitdiff
path: root/src/vk/renderer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vk/renderer.hpp')
-rw-r--r--src/vk/renderer.hpp17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/vk/renderer.hpp b/src/vk/renderer.hpp
index 4b6c91d..4cd7739 100644
--- a/src/vk/renderer.hpp
+++ b/src/vk/renderer.hpp
@@ -17,27 +17,32 @@
#ifndef CANDY_GEAR_VK_RENDERER_H
#define CANDY_GEAR_VK_RENDERER_H 1
+#include <initializer_list>
+#include <memory>
#include <vector>
#include "core.hpp"
+#include "model.hpp"
+#include "model_instance.hpp"
#include "queue_family.hpp"
+#include "view.hpp"
namespace VK
{
struct Renderer
{
- static const int max_frames_in_flight{2};
- size_t current_frame;
- std::vector<VkSemaphore> image_available_semaphores;
- std::vector<VkSemaphore> render_finished_semaphores;
- std::vector<VkFence> in_flight_fences;
+ std::vector<std::unordered_map<
+ std::shared_ptr<Model>, std::vector<ModelInstance>>>
+ models_to_draw;
+ std::vector<std::shared_ptr<View>> views;
QueueFamily *queue_family;
VkCommandPool command_pool;
std::vector<VkCommandBuffer> draw_command_buffers;
- Renderer();
+ Renderer(std::vector<std::shared_ptr<View>> views);
+ Renderer(std::initializer_list<std::shared_ptr<View>> views);
~Renderer();
void