summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/spirv-cross/shaders/geom/single-invocation.geom
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-cross/shaders/geom/single-invocation.geom')
-rw-r--r--3rdparty/bgfx/3rdparty/spirv-cross/shaders/geom/single-invocation.geom28
1 files changed, 28 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-cross/shaders/geom/single-invocation.geom b/3rdparty/bgfx/3rdparty/spirv-cross/shaders/geom/single-invocation.geom
new file mode 100644
index 00000000000..c3c8d1526fd
--- /dev/null
+++ b/3rdparty/bgfx/3rdparty/spirv-cross/shaders/geom/single-invocation.geom
@@ -0,0 +1,28 @@
+#version 310 es
+#extension GL_EXT_geometry_shader : require
+
+layout(triangles) in;
+layout(triangle_strip, max_vertices = 3) out;
+
+layout(location = 0) in VertexData {
+ vec3 normal;
+} vin[];
+
+layout(location = 0) out vec3 vNormal;
+
+void main()
+{
+ gl_Position = gl_in[0].gl_Position;
+ vNormal = vin[0].normal;
+ EmitVertex();
+
+ gl_Position = gl_in[1].gl_Position;
+ vNormal = vin[1].normal;
+ EmitVertex();
+
+ gl_Position = gl_in[2].gl_Position;
+ vNormal = vin[2].normal;
+ EmitVertex();
+
+ EndPrimitive();
+}