add motion vectors to all shaders
[carveJwlIkooP6JGAAIwe30JlM.git] / shaders / blitcolour.h
1 #ifndef SHADER_blitcolour_H
2 #define SHADER_blitcolour_H
3 static void shader_blitcolour_link(void);
4 static void shader_blitcolour_register(void);
5 static struct vg_shader _shader_blitcolour = {
6 .name = "blitcolour",
7 .link = shader_blitcolour_link,
8 .vs =
9 {
10 .static_src =
11 "layout (location=0) in vec2 a_co;\n"
12 "out vec2 aUv;\n"
13 "\n"
14 "void main()\n"
15 "{\n"
16 " gl_Position = vec4(a_co*2.0-1.0,0.0,1.0);\n"
17 " aUv = a_co;\n"
18 "}\n"
19 ""},
20 .fs =
21 {
22 .static_src =
23 "out vec4 FragColor;\n"
24 "uniform vec4 uColour;\n"
25 "\n"
26 "in vec2 aUv;\n"
27 "\n"
28 "void main()\n"
29 "{\n"
30 " FragColor = uColour;\n"
31 "}\n"
32 ""},
33 };
34
35 static GLuint _uniform_blitcolour_uColour;
36 static void shader_blitcolour_uColour(v4f v){
37 glUniform4fv(_uniform_blitcolour_uColour,1,v);
38 }
39 static void shader_blitcolour_register(void){
40 vg_shader_register( &_shader_blitcolour );
41 }
42 static void shader_blitcolour_use(void){ glUseProgram(_shader_blitcolour.id); }
43 static void shader_blitcolour_link(void){
44 _uniform_blitcolour_uColour = glGetUniformLocation( _shader_blitcolour.id, "uColour" );
45 }
46 #endif /* SHADER_blitcolour_H */