18 #ifndef PIC_GL_COLORS_COLOR_CONV_RGB_TO_SRGB_HPP 19 #define PIC_GL_COLORS_COLOR_CONV_RGB_TO_SRGB_HPP 21 #include "../../gl/colors/color_conv.hpp" 49 uniform sampler2D u_tex; \n
52 float fromRGBtosRGB(
float x) {
54 return 1.055 * pow(x, 1.0 / 2.4) - 0.055;
61 ivec2 coords = ivec2(gl_FragCoord.xy); \n
62 vec3 colIn = texelFetch(u_tex, coords, 0).xyz; \n
63 vec3 colOut = vec3(fromRGBtosRGB(colIn.x),
64 fromRGBtosRGB(colIn.y),
65 fromRGBtosRGB(colIn.z));
66 f_color = vec4(colOut, 1.0); \n
71 return fragment_source;
81 uniform sampler2D u_tex; \n
84 float fromsRGBtoRGB(
float x) {
86 return pow((x + 0.055) / (1.055), 2.4);
94 ivec2 coords = ivec2(gl_FragCoord.xy); \n
95 vec3 colIn = texelFetch(u_tex, coords, 0).xyz; \n
96 vec3 colOut = vec3(fromsRGBtoRGB(colIn.x),
97 fromsRGBtoRGB(colIn.y),
98 fromsRGBtoRGB(colIn.z)); \n
99 f_color = vec4(colOut, 1.0); \n
104 return fragment_source;
std::string getDirectFunctionAux()
getDirectFunctionAux
Definition: color_conv_rgb_to_srgb.hpp:111
std::string getInverseUniforms()
getInverseUniforms
Definition: color_conv_rgb_to_srgb.hpp:138
std::string getDirectUniforms()
getDirectUniforms
Definition: color_conv_rgb_to_srgb.hpp:129
#define MAKE_STRING(input_string)
ColorConvGLRGBtosRGB(bool direct=true)
ColorConvGLRGBtosRGB.
Definition: color_conv_rgb_to_srgb.hpp:35
std::string getInverseFunctionAux()
getInverseFunctionAux
Definition: color_conv_rgb_to_srgb.hpp:120
The ColorConvGL class.
Definition: color_conv.hpp:30
std::string getDirectFunction()
getDirectFunction
Definition: color_conv_rgb_to_srgb.hpp:46
int direct
Definition: display.hpp:33
std::string getInverseFunction()
getInverseFunction
Definition: color_conv_rgb_to_srgb.hpp:78
Definition: bilateral_separation.hpp:25
The ColorConvGLRGBtosRGB class.
Definition: color_conv_rgb_to_srgb.hpp:28