summaryrefslogtreecommitdiffstats
path: root/src/Renderer.hpp
blob: 81c5c505a55b187b2102ea1083b25b819cedf7d8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#include <GL/glew.h>

class RenderState {
	GLuint ActiveVao;
	GLuint ActiveShader;
public:
	void SetActiveVao(GLuint Vao);
	void SetActiveShader(GLuint Shader);
};

struct Renderer {
	virtual ~Renderer() = default;
	virtual void Render(RenderState& renderState) = 0;
	virtual void PrepareResources() = 0;
	virtual void PrepareRender() = 0;
};