2018-01-21 21:43:22 -05:00
|
|
|
uniform vec2 center;
|
|
|
|
uniform vec2 size;
|
|
|
|
uniform vec2 texcenter;
|
|
|
|
uniform vec2 texsize;
|
2020-02-16 03:31:30 -05:00
|
|
|
uniform float rotation;
|
2018-01-21 21:43:22 -05:00
|
|
|
|
|
|
|
#ifdef Explicit_Attrib_Location_Usable
|
|
|
|
layout(location=0) in vec2 Position;
|
|
|
|
layout(location=3) in vec2 Texcoord;
|
|
|
|
layout(location=2) in vec4 Color;
|
|
|
|
#else
|
|
|
|
in vec2 Position;
|
|
|
|
in vec2 Texcoord;
|
|
|
|
in vec4 Color;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
out vec2 uv;
|
2020-04-30 21:34:04 -04:00
|
|
|
out vec4 color;
|
2018-01-21 21:43:22 -05:00
|
|
|
|
|
|
|
void main()
|
|
|
|
{
|
2020-02-16 03:31:30 -05:00
|
|
|
float s = sin(rotation);
|
|
|
|
float c = cos(rotation);
|
|
|
|
mat2 m = mat2(c, -s, s, c);
|
2020-04-30 21:34:04 -04:00
|
|
|
color = Color.zyxw;
|
2018-01-21 21:43:22 -05:00
|
|
|
uv = Texcoord * texsize + texcenter;
|
2020-02-16 03:31:30 -05:00
|
|
|
gl_Position = vec4(m * Position * size + center, 0., 1.);
|
2018-01-21 21:43:22 -05:00
|
|
|
}
|