8 #ifndef META_OCEAN_RENDERING_GI_LIGHT_SOURCE_H
9 #define META_OCEAN_RENDERING_GI_LIGHT_SOURCE_H
24 namespace GlobalIllumination
92 inline const RGBAColor& ambientColorInline()
const;
98 inline const RGBAColor& diffuseColorInline()
const;
104 inline const RGBAColor& specularColorInline()
const;
110 inline Scalar intensityInline()
const;
116 inline bool enabledInline()
const;
This class implements a color defined by red, green, blue and alpha parameters.
Definition: RGBAColor.h:41
This class is the base class for all Global Illumination light sources.
Definition: GILightSource.h:49
~GILightSource() override
Destructs a Global Illumination light source.
RGBAColor diffuseColor() const override
Returns the diffuse color of this light source.
GILightSource()
Creates a new Global Illumination light source.
bool lightEnabled
Determines whether the light is enabled.
Definition: GILightSource.h:181
bool setDiffuseColor(const RGBAColor &color) override
Sets the diffuse color of the light source.
Scalar intensityInline() const
Returns the intensity of this light source.
Definition: GILightSource.h:199
bool setAmbientColor(const RGBAColor &color) override
Sets the ambient color of the light source.
void get(RGBAColor &ambient, RGBAColor &diffuse, RGBAColor &specular, Scalar &intensity) override
Gets all color values of the light at once.
Scalar intensity() const override
Returns the intensity of this light source.
bool setSpecularColor(const RGBAColor &color) override
Sets the specular color of the light source.
bool enabled() const override
Returns whether this light source is enabled.
const RGBAColor & ambientColorInline() const
Returns the ambient color of this light source.
Definition: GILightSource.h:184
RGBAColor lightSpecularColor
Specular light color.
Definition: GILightSource.h:175
const RGBAColor & diffuseColorInline() const
Returns the diffuse color of this light source.
Definition: GILightSource.h:189
RGBAColor lightDiffuseColor
Diffuse light color.
Definition: GILightSource.h:172
Scalar lightIntensity
Light intensity.
Definition: GILightSource.h:178
void setEnabled(const bool state) override
Sets whether the light source is enabled.
RGBAColor ambientColor() const override
Returns the ambient color of this light source.
RGBAColor specularColor() const override
Returns the specular color of this light source.
bool set(const RGBAColor &ambient, const RGBAColor &diffuse, const RGBAColor &specular, const Scalar intensity) override
Sets all color values of the light source at once.
bool enabledInline() const
Returns whether this light source is enabled.
Definition: GILightSource.h:204
RGBAColor lightAmbientColor
Ambient light color.
Definition: GILightSource.h:169
bool setIntensity(const Scalar intensity) override
Sets the specular exponent of this material.
const RGBAColor & specularColorInline() const
Returns the specular color of this light source.
Definition: GILightSource.h:194
This class is the base class for all Global Illumination objects.
Definition: GIObject.h:29
This is the base class for all lights.
Definition: LightSource.h:38
float Scalar
Definition of a scalar type.
Definition: Math.h:128
std::pair< SmartObjectRef< GILightSource >, HomogenousMatrix4 > LightPair
Definition of a pair holding a light source and a homogenous matrix.
Definition: GILightSource.h:28
std::vector< LightPair > LightSources
Definition of a vector holding light pairs.
Definition: GILightSource.h:40
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15