diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-01-15 18:18:29 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-01-15 18:18:29 +0300 |
commit | 55fe6050feeb1c0e16f31205f51850dccf7186ba (patch) | |
tree | 0d4ed1442403c676c8b0305ee12123edcb42e27d /shaders | |
parent | 172e39f0398b920cfc221b7826c92105d44ad647 (diff) |
GLSL: Implement geometry shader passthrough extension.
Diffstat (limited to 'shaders')
-rw-r--r-- | shaders/geom/geometry-passthrough.geom | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/shaders/geom/geometry-passthrough.geom b/shaders/geom/geometry-passthrough.geom new file mode 100644 index 00000000..7f1997c7 --- /dev/null +++ b/shaders/geom/geometry-passthrough.geom @@ -0,0 +1,28 @@ +#version 450 +#extension GL_NV_geometry_shader_passthrough : require + +layout(triangles) in; + +layout(passthrough) in gl_PerVertex +{ + vec4 gl_Position; +} gl_in[]; + +layout(passthrough, location = 0) in VertexBlock +{ + int a; + int b; +} v1[]; + +layout(location = 2) in VertexBlock2 +{ + int a; + layout(passthrough) int b; +} v2[]; + +layout(passthrough, location = 4) in vec4 vPoint[]; + +void main() +{ + gl_Layer = gl_InvocationID + v1[0].a + v2[1].b; +} |