#pragma once
#include <vector>
#include <iostream>
#include <glm/gtc/matrix_transform.hpp>
#include "glad/glad.h"
#include "GLFW/glfw3.h"

#include "../PerfCounter.h"

#include "Primitives/Camera.h"
#include "Renderable.h"
#include "Memory/Framebuffer.h"
#include "../Scene/Components.h"

namespace BarinkEngine {

	class Renderer {
	public:
		Renderer();
		~Renderer();

		void Prepare(Scene& scene);
		void Render(Scene& scene );

		void Render(Framebuffer& framebuffer, Scene& scene);
	};
}