master
ブランチ master
ShaderPlayground / deps / glm / glm / gtc / color_space.hpp
1.9 KB、56行 生 Blame 履歴
1/// @ref gtc_color_space
2/// @file glm/gtc/color_space.hpp
3///
4/// @see core (dependence)
5/// @see gtc_color_space (dependence)
6///
7/// @defgroup gtc_color_space GLM_GTC_color_space
8/// @ingroup gtc
9///
10/// Include <glm/gtc/color_space.hpp> to use the features of this extension.
11///
12/// Allow to perform bit operations on integer values
13
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
28namespace glm
29{
30 /// @addtogroup gtc_color_space
31 /// @{
32
33 /// Convert a linear color to sRGB color using a standard gamma correction.
34 /// IEC 61966-2-1:1999 / Rec. 709 specification https://www.w3.org/Graphics/Color/srgb
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
38 /// Convert a linear color to sRGB color using a custom gamma correction.
39 /// IEC 61966-2-1:1999 / Rec. 709 specification https://www.w3.org/Graphics/Color/srgb
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
43 /// Convert a sRGB color to linear color using a standard gamma correction.
44 /// IEC 61966-2-1:1999 / Rec. 709 specification https://www.w3.org/Graphics/Color/srgb
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
48 /// Convert a sRGB color to linear color using a custom gamma correction.
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
53 /// @}
54} //namespace glm
55
56#include "color_space.inl"