18 #ifndef PIC_GL_FILTERING_FILTER_GRADIENT_HPP 19 #define PIC_GL_FILTERING_FILTER_GRADIENT_HPP 21 #include "../../gl/filtering/filter.hpp" 38 uniform sampler2D u_tex; \n
43 ivec2 coords = ivec2(gl_FragCoord.xy); \n
44 vec3 c0 = texelFetch(u_tex, coords + ivec2(1, 0), 0).xyz; \n
45 vec3 c1 = texelFetch(u_tex, coords - ivec2(1, 0), 0).xyz; \n
46 vec3 c2 = texelFetch(u_tex, coords + ivec2(0, 1), 0).xyz; \n
47 vec3 c3 = texelFetch(u_tex, coords - ivec2(0, 1), 0).xyz; \n
50 f_color = vec4(sqrt(Gx.xyz * Gx.xyz + Gy.xyz * Gy.xyz), 1.0);\n d d
TechniqueGL technique
Definition: display.hpp:45
void initShaders()
initShaders
Definition: filter_gradient.hpp:34
void bind()
bind
Definition: display.hpp:189
~FilterGLGradient()
Definition: filter_gradient.hpp:76
#define MAKE_STRING(input_string)
The FilterGLGradient class.
Definition: filter_gradient.hpp:28
The FilterGL class.
Definition: filter.hpp:35
bool initStandard(std::string version_number, std::string vertex_shader_source, std::string fragment_shader_source, std::string name)
initStandard
Definition: display.hpp:114
void unbind()
unbind
Definition: display.hpp:197
std::string vertex_source
Definition: display.hpp:57
FilterGLGradient()
FilterGLGradient.
Definition: filter_gradient.hpp:70
Definition: bilateral_separation.hpp:25
std::string fragment_source
Definition: display.hpp:57
void release()
release
Definition: display.hpp:85
void setUniform1i(const char *name_uniform, int value0)
SetUniform.
Definition: display.hpp:236