CDirectionalLight.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include "ILight.h"
5 
6 
7 namespace ion
8 {
9  namespace Scene
10  {
11 
12  class CDirectionalLight : public ILight
13  {
14 
15  public:
16 
18 
19  color3f GetColor() const;
20  vec3f GetDirection() const;
21 
22  void SetColor(color3f const & Color);
23  void SetDirection(vec3f const & Direction);
24 
25  string GetLightType() const;
26 
27  protected:
28 
29  Graphics::CUniform<color3f> Color = Colors::White;
30  Graphics::CUniform<vec3f> Direction = vec3f(0, -1, 0);
31 
32  };
33 
34  }
35 }
Definition: CDirectionalLight.h:12
Definition: SColor.h:8
3D vector
Definition: SVector3.h:15
vec3< f32 > vec3f
Definition: SVector3.h:634
Customized variant of vec3 that intelligently handles conversion between floating point and integer c...
Definition: SColor.h:67
string GetLightType() const
Definition: CDirectionalLight.cpp:36
Graphics::CUniform< vec3f > Direction
Definition: CDirectionalLight.h:30
void SetColor(color3f const &Color)
Definition: CDirectionalLight.cpp:26
Definition: CCatmullRomAdvancedSplineInterpolator.h:7
CDirectionalLight()
Definition: CDirectionalLight.cpp:10
vec3f GetDirection() const
Definition: CDirectionalLight.cpp:21
Helper class to easily add a uniform as a member or local variable.
Definition: IUniform.h:158
color3f GetColor() const
Definition: CDirectionalLight.cpp:16
Definition: ILight.h:13
void SetDirection(vec3f const &Direction)
Definition: CDirectionalLight.cpp:31