aboutsummaryrefslogtreecommitdiff
path: root/resources/shader.geom
blob: 05a297595b976cdd33ce8ece73c39660fbcd11cf (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
#version 330 core

layout(points) in;
layout(line_strip, max_vertices = 2) out;

uniform mat4 MVP; // Model View Projection Matrix

uniform float length = 1.0;
uniform vec3 color = vec3(1.0, 1.0, 1.0);

in vec3 vertex_normal[];

out vec3 vertex_color;

void main()
{
    vec3 normal = vertex_normal[0];

    vertex_color = color;

    vec4 v0 = gl_in[0].gl_Position;
    gl_Position = mvp * v0;
    EmitVertex();

    vec4 v1 = v0 + vec4(normal * length, 0.0);
    gl_Position = mvp * v1;
    EmitVertex();

    EndPrimitive();
}