1 | 1 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,32 @@ |
1 |
+#version 150 |
|
2 |
+ |
|
3 |
+ |
|
4 |
+layout(triangles) in; |
|
5 |
+layout(line_strip, max_vertices = 6) out; |
|
6 |
+ |
|
7 |
+ |
|
8 |
+uniform mat4 view_projection; |
|
9 |
+uniform float scale; |
|
10 |
+ |
|
11 |
+ |
|
12 |
+in vec4 geom_normal[3]; |
|
13 |
+ |
|
14 |
+ |
|
15 |
+void primitive_(int i) |
|
16 |
+{ |
|
17 |
+ gl_Position = view_projection * |
|
18 |
+ (gl_in[i].gl_Position); |
|
19 |
+ EmitVertex(); |
|
20 |
+ gl_Position = view_projection * |
|
21 |
+ (gl_in[i].gl_Position + scale * geom_normal[i]); |
|
22 |
+ EmitVertex(); |
|
23 |
+ EndPrimitive(); |
|
24 |
+} |
|
25 |
+ |
|
26 |
+ |
|
27 |
+void main() |
|
28 |
+{ |
|
29 |
+ primitive_(0); |
|
30 |
+ primitive_(1); |
|
31 |
+ primitive_(2); |
|
32 |
+} |