FlukyEngine
color_space.hpp
Go to the documentation of this file.
1 
14 #pragma once
15 
16 // Dependencies
17 #include "../detail/setup.hpp"
18 #include "../detail/qualifier.hpp"
19 #include "../exponential.hpp"
20 #include "../vec3.hpp"
21 #include "../vec4.hpp"
22 #include <limits>
23 
24 #if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
25 # pragma message("GLM: GLM_GTC_color_space extension included")
26 #endif
27 
28 namespace glm
29 {
32 
35  template<length_t L, typename T, qualifier Q>
36  GLM_FUNC_DECL vec<L, T, Q> convertLinearToSRGB(vec<L, T, Q> const& ColorLinear);
37 
40  template<length_t L, typename T, qualifier Q>
41  GLM_FUNC_DECL vec<L, T, Q> convertLinearToSRGB(vec<L, T, Q> const& ColorLinear, T Gamma);
42 
45  template<length_t L, typename T, qualifier Q>
46  GLM_FUNC_DECL vec<L, T, Q> convertSRGBToLinear(vec<L, T, Q> const& ColorSRGB);
47 
49  // IEC 61966-2-1:1999 / Rec. 709 specification https://www.w3.org/Graphics/Color/srgb
50  template<length_t L, typename T, qualifier Q>
51  GLM_FUNC_DECL vec<L, T, Q> convertSRGBToLinear(vec<L, T, Q> const& ColorSRGB, T Gamma);
52 
54 } //namespace glm
55 
56 #include "color_space.inl"
Core features
Definition: common.hpp:20
GLM_FUNC_DECL vec< L, T, Q > convertLinearToSRGB(vec< L, T, Q > const &ColorLinear)
Convert a linear color to sRGB color using a standard gamma correction.
Definition: color_space.inl:52
GLM_FUNC_DECL vec< L, T, Q > convertSRGBToLinear(vec< L, T, Q > const &ColorSRGB)
Convert a sRGB color to linear color using a standard gamma correction.
Definition: color_space.inl:74