diff --git a/src/light.hh b/src/light.hh index 241ef33..22d0f2f 100644 --- a/src/light.hh +++ b/src/light.hh @@ -6,6 +6,8 @@ #ifndef __LIGHT_H__ #define __LIGHT_H__ +#include + #include "basics/basics.hh" @@ -13,6 +15,8 @@ namespace charles { struct Light { + typedef std::shared_ptr Ptr; + Light(const basics::Color& color, const Double& intensity = 1.0); @@ -23,7 +27,7 @@ struct Light Double GetIntensity() const; void SetIntensity(const Double& intensity); - basics::Color&& Contribution() const; + virtual basics::Color&& Contribution() const; private: Double ClampIntensity(const Double& intensity);