1[require] 2GL >= 2.0 3GLSL >= 1.10 4GL_ARB_geometry_shader4 5 6[vertex shader] 7#version 110 8 9attribute vec4 vertex; 10 11void main() 12{ 13 gl_Position = vertex; 14} 15 16[geometry shader] 17#version 110 18#extension GL_ARB_geometry_shader4: enable 19 20void main() 21{ 22 for (int i = 0; i < 3; i++) { 23 gl_Position = gl_PositionIn[i]; 24 EmitVertex(); 25 } 26} 27 28[geometry layout] 29input type GL_TRIANGLES 30output type GL_TRIANGLE_STRIP 31vertices out 3 32 33[fragment shader] 34#version 110 35 36void main() 37{ 38 gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0); 39} 40 41[vertex data] 42vertex/float/2 43-1.0 -1.0 44 1.0 -1.0 45 1.0 1.0 46-1.0 1.0 47 48[test] 49draw arrays GL_TRIANGLE_FAN 0 4 50probe all rgba 0.0 1.0 0.0 1.0 51