blob: 27dd88a1f88778bd7dc02028439f6038f2b7c1cc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#version 440
layout(location = 0) in vec4 qt_Vertex;
layout(location = 1) in vec2 qt_MultiTexCoord0;
layout(location = 0) out vec2 qt_TexCoord0;
layout(location = 1) out vec2 qt_TexCoord1;
layout(location = 2) out vec2 centerPoint;
layout(std140, binding = 0) uniform buf {
mat4 qt_Matrix;
float qt_Opacity;
vec2 center;
vec2 matrixData;
float horizontalRatio;
float verticalRatio;
};
out gl_PerVertex { vec4 gl_Position; };
void main()
{
vec2 ratio = vec2(horizontalRatio, verticalRatio);
mat2 rot = mat2(matrixData.y, -matrixData.x,
matrixData.x, matrixData.y);
qt_TexCoord0 = qt_MultiTexCoord0;
qt_TexCoord1 = qt_MultiTexCoord0;
qt_TexCoord1 -= center;
qt_TexCoord1 *= rot;
qt_TexCoord1 += center;
qt_TexCoord1 *= ratio;
centerPoint = center * ratio;
gl_Position = qt_Matrix * qt_Vertex;
}
|