SparrowRenderer/phongmodule.h

34 lines
629 B
C++

#ifndef PHONGMODULE_H
#define PHONGMODULE_H
#include "module.h"
#include <vector>
#include <cstddef>
#include <glew/glew.h>
#include "lights.h"
class Shader;
class PhongEntity;
class PhongModule : public Module
{
private:
Lights::Light* dirLight;
Lights* pointLights;
GLuint dirLightLocation;
GLuint nbPointLightsLocation;
GLuint pointLightsLocation;
Shader* shader;
std::vector<PhongEntity*> entities;
public:
PhongModule(Lights::Light* myDirLight, Lights* myPointLights);
void addEntity(PhongEntity* myEntity);
void virtual renderGL(Camera* myCamera);
};
#endif // PHONGMODULE_H