Molecular Vis
Improving perception of molecular visualization
PointLight.h
1 #pragma once
2 #include "Light.h"
3 
8 class PointLight :
9  public Light
10 {
11 private:
12  struct PointLightProperties {
13  glm::vec3 color;
14  glm::vec3 position;
15  glm::vec3 attenuation; //x = quad y=linear z=constant
16  PointLightProperties(glm::vec3 color, glm::vec3 position, glm::vec3 attenuation) :color(color), position(position), attenuation(attenuation) {}
17  } properties;
18 
19 protected:
28  virtual void setUniform(std::shared_ptr<Shader>& shader, int index);
29 public:
37  PointLight(glm::vec3 color, glm::vec3 position, glm::vec3 attenuation);
38  ~PointLight();
39 };
40 
Base class for lights.
Definition: Light.h:8
virtual void setUniform(std::shared_ptr< Shader > &shader, int index)
Definition: PointLight.cpp:5
PointLight(glm::vec3 color, glm::vec3 position, glm::vec3 attenuation)
Definition: PointLight.cpp:14
Class for point-lights.
Definition: PointLight.h:8