aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph/shaders_ng/visualization.vert
blob: c29492417a81d361d7ff4b7da29df42fc0dc2fa3 (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
#version 440

layout(location = 0) in vec4 v;
layout(location = 0) out vec2 pos;

layout(std140, binding = 0) uniform buf {
    mat4 matrix;
    mat4 rotation;
    vec4 color;
    float pattern;
    int projection;
} ubuf;

out gl_PerVertex { vec4 gl_Position; };

void main()
{
    vec4 p = ubuf.matrix * v;

    if (ubuf.projection != 0) {
        vec4 proj = ubuf.rotation * p;
        gl_Position = vec4(proj.x, proj.y, 0, proj.z);
    } else {
        gl_Position = p;
    }

    pos = v.xy * 1.37;
}