24 lines
520 B
GLSL
24 lines
520 B
GLSL
uniform vec2 center;
|
|
uniform vec2 size;
|
|
uniform vec2 texcenter;
|
|
uniform vec2 texsize;
|
|
uniform float rotation;
|
|
#ifdef Explicit_Attrib_Location_Usable
|
|
layout(location=0) in vec2 Position;
|
|
layout(location=3) in vec2 Texcoord;
|
|
#else
|
|
in vec2 Position;
|
|
in vec2 Texcoord;
|
|
#endif
|
|
|
|
out vec2 uv;
|
|
|
|
void main()
|
|
{
|
|
float s = sin(rotation);
|
|
float c = cos(rotation);
|
|
mat2 m = mat2(c, -s, s, c);
|
|
uv = Texcoord * texsize + texcenter;
|
|
gl_Position = vec4(m * Position * size + center, 0., 1.) ;
|
|
}
|