SparrowRenderer/phongmaterial.h

34 lines
635 B
C++

#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