#ifndef SHADER_H
#define SHADER_H

#include "img.h"
#include "vec.h"

typedef V3f(VertexShader)(const V3f *vertex, M4x4f *model_view,
                          M4x4f *projection, const Image *img);
typedef bool(FragmentShader)(Colour colour);

typedef struct shader Shader;
struct shader {
  VertexShader *vertex;
  FragmentShader *fragment;
  M4x4f *model_view;
  M4x4f *projection;
};

#endif // SHADER_H
