bettola/src/graphics/renderer.h

30 lines
585 B
C++

#pragma once
#include <vector>
#include "graphics/camera.h"
#include "shader.h"
#include "game/player.h"
#include "game/remote_player.h"
#include "math/mat4.h"
class Renderer {
public:
Renderer(void);
~Renderer(void);
bool init(int screen_width, int screen_height);
void render(const Camera& camera, const Player& player,
const std::vector<RemotePlayer>& remote_players);
private:
bool _init_shaders();
Shader _shader;
unsigned int _vao;
unsigned int _vbo;
unsigned int _ground_vao;
unsigned int _ground_vbo;
BettolaMath::Mat4 _projection;
};