#ifndef MATERIAL_H #define MATERIAL_H #include "shader.h" #include "glm/fwd.hpp" enum { // Geometry Flags NORMAL_MAP = 1 << 0, DIFFUSE_TEXTURE = 1 << 1, SPECULAR_TEXTURE = 1 << 2, ALPHA_MASK = 1 << 3, }; class Material { public: Material(Shader* myShader = NULL) : shader(myShader) {} Shader* getShader() {return shader;} virtual void bindAttributes() = 0; virtual unsigned int getFlags() = 0; protected: Shader* shader; }; #endif // MATERIAL_H