1 #ifndef BLANK_GRAPHICS_DIRECTIONALLIGHTING_HPP_
2 #define BLANK_GRAPHICS_DIRECTIONALLIGHTING_HPP_
12 class DirectionalLighting {
15 DirectionalLighting();
17 void Activate() noexcept;
19 void SetLightDirection(const glm::vec3 &) noexcept;
20 void SetLightColor(const glm::vec3 &) noexcept;
22 void SetFogDensity(float) noexcept;
24 void SetM(const glm::mat4 &m) noexcept;
25 void SetProjection(const glm::mat4 &p) noexcept;
26 void SetView(const glm::mat4 &v) noexcept;
27 void SetVP(const glm::mat4 &v, const glm::mat4 &p) noexcept;
28 void SetMVP(const glm::mat4 &m, const glm::mat4 &v, const glm::mat4 &p) noexcept;
30 const glm::mat4 &Projection() const noexcept { return projection; }
31 const glm::mat4 &View() const noexcept { return view; }
32 const glm::mat4 &GetVP() const noexcept { return vp; }
44 GLuint light_direction_handle;
45 GLuint light_color_handle;
46 GLuint fog_density_handle;