#pragma once

#include "Camera.h"
#include "Framebuffer3D.h"
#include "Shader.h"
#include "Texture.h"
#include "VertexBuffer.h"

class MCRenderer {
  public:
    MCRenderer(int size_x, int size_y, int size_z);

    void render(float delta);

  private:
    int size_x;
    int size_y;
    int size_z;

    float height = 0.0;

    Shader render_shader;
    Shader noise_shader;

    Framebuffer3D noise;
    VertexBuffer vertex_rectangle;

    Camera camera;

    Texture albedo;
    Texture bump;
};
