1#version 420
2
3in mat3x4 m1;
4in mat3x4 m2;
5in float f;
6in vec3 v3;
7in vec4 v4;
8
9out vec4 color;
10
11void main()
12{
13    mat3x4 sum34;
14    dmat3x4 dm;
15    vec3 sum3;
16    vec4 sum4;
17
18    sum34 = m1 - m2;
19    sum34 += m1 * f;
20    sum34 += f * m1;
21    sum34 /= matrixCompMult(m1, m2);
22    sum34 += m1 / f;
23    sum34 += f / m1;
24    sum34 += f;
25    sum34 -= f;
26    dm = dmat3x4(sum34);
27    sum34 = mat3x4(dm);
28
29    sum3 = v4 * m2;
30    sum4 = m2 * v3;
31
32    mat4x3 m43 = transpose(sum34);
33    mat4 m4 = m1 * m43;
34
35    sum4 = v4 * m4;
36
37    color = sum4;
38
39    ++sum34;
40    --sum34;
41
42    sum34 += mat3x4(f);
43    sum34 += mat3x4(v3, f, v3, f, v3, f);
44
45    color += sum3 * m43 + sum4;
46
47    color += vec4(m43);
48    color += vec4(vec3(mat2(f)), 7.2);
49}
50