diff options
Diffstat (limited to 'examples/qt3d/tessellation-modes/shaders/quads.tcs')
-rw-r--r-- | examples/qt3d/tessellation-modes/shaders/quads.tcs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/examples/qt3d/tessellation-modes/shaders/quads.tcs b/examples/qt3d/tessellation-modes/shaders/quads.tcs new file mode 100644 index 000000000..367195522 --- /dev/null +++ b/examples/qt3d/tessellation-modes/shaders/quads.tcs @@ -0,0 +1,21 @@ +#version 400 core + +layout( vertices = 4 ) out; + +uniform float inner[2] = float[]( 10.0, 10.0 ); +uniform float outer[4] = float[]( 1.0, 1.0, 1.0, 1.0 ); + +void main() +{ + // Pass along the vertex position unmodified + gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position; + + // Set the tessellation levels from the uniforms + gl_TessLevelOuter[0] = outer[0]; + gl_TessLevelOuter[1] = outer[1]; + gl_TessLevelOuter[2] = outer[2]; + gl_TessLevelOuter[3] = outer[3]; + + gl_TessLevelInner[0] = inner[0]; + gl_TessLevelInner[1] = inner[1]; +} |