AnimEngine
Lights.hpp
1 #ifndef ANIM_ENGINE_LIGHT_ENTITIES_H_
2 #define ANIM_ENGINE_LIGHT_ENTITIES_H_
3 #include "EntitiesBase.hpp"
4 #include <glm/glm.hpp>
5 
6 class VirtualPointLight : public virtual PoseableWorldEntity, public virtual CachedFinalPose
7 {
8  public:
9  virtual ~VirtualPointLight() = default;
10 
11  virtual const Pose& getPose() const override {return(mPose);}
12  virtual Pose& getMutablePose() {return(mPose);}
13  virtual void setPose(const Pose& pose) override {mPose = pose;}
14 
15  const glm::vec3& getColor() const {return(mColor);}
16  void setColor(const glm::vec3& aColor) {mColor = aColor;}
17 
18  float getIntensity() const {return(mIntensity);}
19  void setIntensity(float aIntensity) {mIntensity = aIntensity;}
20 
21  protected:
22  Pose mPose;
23  glm::vec3 mColor = glm::vec3(1.0f);
24  float mIntensity = 1.0f;
25 };
26 
27 #endif
Definition: EntitiesBase.hpp:82
Definition: EntitiesBase.hpp:59
Definition: Lights.hpp:6
Definition: Pose.hpp:11