2017-08-09 15:03:37 +08:00
|
|
|
uniform mat4 color_matrix;
|
2014-01-25 21:33:21 +01:00
|
|
|
uniform vec3 Position;
|
|
|
|
uniform vec2 Size;
|
|
|
|
|
2017-02-01 21:58:10 +01:00
|
|
|
#ifdef Explicit_Attrib_Location_Usable
|
2014-08-07 00:52:44 +02:00
|
|
|
layout(location = 0) in vec2 Corner;
|
|
|
|
layout(location = 3) in vec2 Texcoord;
|
|
|
|
#else
|
2014-01-25 21:33:21 +01:00
|
|
|
in vec2 Corner;
|
|
|
|
in vec2 Texcoord;
|
2014-02-28 17:29:05 +01:00
|
|
|
#endif
|
|
|
|
|
2014-08-07 00:52:44 +02:00
|
|
|
out vec2 uv;
|
2017-08-09 15:03:37 +08:00
|
|
|
out vec4 vertex_color;
|
2014-01-25 21:33:21 +01:00
|
|
|
|
|
|
|
void main(void)
|
|
|
|
{
|
|
|
|
uv = Texcoord;
|
2017-08-09 15:03:37 +08:00
|
|
|
vec4 Center = ViewMatrix * vec4(Position, 1.);
|
2014-01-25 21:33:21 +01:00
|
|
|
gl_Position = ProjectionMatrix * (Center + vec4(Size * Corner, 0., 0.));
|
2017-08-09 15:03:37 +08:00
|
|
|
vertex_color = color_matrix[gl_VertexID];
|
2014-01-25 21:33:21 +01:00
|
|
|
}
|