1 #ifndef SHADER_routeui_H
2 #define SHADER_routeui_H
3 static void shader_routeui_link(void);
4 static void shader_routeui_register(void);
5 static struct vg_shader _shader_routeui
= {
7 .link
= shader_routeui_link
,
11 "layout (location=0) in vec2 a_co;\n"
13 "uniform vec4 uOffset;\n"
17 " vec2 vpos = a_co * uOffset.zw + uOffset.xy;\n"
18 " gl_Position = vec4(vpos,0.0,1.0);\n"
24 "out vec4 FragColor;\n"
26 "uniform vec4 uColour;\n"
30 " FragColor = uColour;\n"
35 static GLuint _uniform_routeui_uOffset
;
36 static GLuint _uniform_routeui_uColour
;
37 static void shader_routeui_uOffset(v4f v
){
38 glUniform4fv(_uniform_routeui_uOffset
,1,v
);
40 static void shader_routeui_uColour(v4f v
){
41 glUniform4fv(_uniform_routeui_uColour
,1,v
);
43 static void shader_routeui_register(void){
44 vg_shader_register( &_shader_routeui
);
46 static void shader_routeui_use(void){ glUseProgram(_shader_routeui
.id
); }
47 static void shader_routeui_link(void){
48 _uniform_routeui_uOffset
= glGetUniformLocation( _shader_routeui
.id
, "uOffset" );
49 _uniform_routeui_uColour
= glGetUniformLocation( _shader_routeui
.id
, "uColour" );
51 #endif /* SHADER_routeui_H */