1 #ifndef SHADER_post_darken_H
2 #define SHADER_post_darken_H
3 static void shader_post_darken_link(void);
4 static void shader_post_darken_register(void);
5 static struct vg_shader _shader_post_darken
= {
7 .link
= shader_post_darken_link
,
10 .orig_file
= "shaders/post_darken.vs.glsl",
12 "layout (location=0) in vec2 a_co;\n"
13 "out vec2 aTexCoords;\n"
16 " gl_Position = vec4( a_co * 2.0 - 1.0, 0.0, 1.0 );\n"
17 " aTexCoords = a_co;\n"
22 .orig_file
= "shaders/post_darken.fs.glsl",
24 "uniform sampler2D uTexMain;\n"
25 "out vec4 FragColor;\n"
27 "in vec2 aTexCoords;\n"
30 " vec4 texture_sample = texture( uTexMain, aTexCoords );\n"
31 " FragColor = vec4(pow(texture_sample.rgb,vec3(2.2)), 1.0);\n"
36 static GLuint _uniform_post_darken_uTexMain
;
37 static void shader_post_darken_uTexMain(int i
){
38 glUniform1i(_uniform_post_darken_uTexMain
,i
);
40 static void shader_post_darken_register(void){
41 vg_shader_register( &_shader_post_darken
);
43 static void shader_post_darken_use(void){ glUseProgram(_shader_post_darken
.id
); }
44 static void shader_post_darken_link(void){
45 _uniform_post_darken_uTexMain
= glGetUniformLocation( _shader_post_darken
.id
, "uTexMain" );
47 #endif /* SHADER_post_darken_H */