#ifndef PHONGMATERIAL_H #define PHONGMATERIAL_H #include "material.h" #include "glm/vec3.hpp" class Texture; class PhongMaterial : public Material { public: glm::vec3 kd; glm::vec3 ks; float ns; Texture* diffuse_texture; Texture* normal_map; PhongMaterial() : kd(0.5f), ks(0.5f), ns(10), diffuse_texture(NULL) { updateShader(); } PhongMaterial(glm::vec3 myKd, glm::vec3 myKs, float myNs) : kd(myKd), ks(myKs), ns(myNs), diffuse_texture(NULL) { updateShader(); } virtual void bindAttributes(); void setTexture(Texture* myTexture); void updateShader(); }; #endif // PHONGMATERIAL_H