1 glCreateShader(type = GL_FRAGMENT_SHADER) = 1
2 glShaderSource(shader = 1, count = 1, string = &"void main() {
3 gl_FragColor = gl_Color;
6 glCompileShader(shader = 1)
7 glGetShaderiv(shader = 1, pname = GL_COMPILE_STATUS, params = &1)
8 glCreateShader(type = GL_VERTEX_SHADER) = 2
9 glShaderSource(shader = 2, count = 1, string = &"void main() {
10 gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
11 gl_FrontColor = gl_Color;
14 glCompileShader(shader = 2)
15 glGetShaderiv(shader = 2, pname = GL_COMPILE_STATUS, params = &1)
17 glAttachShader(program = 3, shader = 1)
18 glAttachShader(program = 3, shader = 2)
19 glLinkProgram(program = 3)
20 glGetProgramiv(program = 3, pname = GL_LINK_STATUS, params = &1)
21 glUseProgram(program = 3)
22 glClearColor(red = 0.3, green = 0.1, blue = 0.3, alpha = 1)
23 glViewport(x = 0, y = 0, width = 250, height = 250)
24 glMatrixMode(mode = GL_PROJECTION)
26 glOrtho(left = -1, right = 1, bottom = -1, top = 1, zNear = -0.5, zFar = 1000)
27 glMatrixMode(mode = GL_MODELVIEW)
28 glClear(mask = GL_COLOR_BUFFER_BIT)
29 glBegin(mode = GL_TRIANGLES)
30 glColor3f(red = 0.8, green = 0, blue = 0)
31 glVertex3f(x = -0.9, y = -0.9, z = -30)
32 glColor3f(red = 0, green = 0.9, blue = 0)
33 glVertex3f(x = 0.9, y = -0.9, z = -30)
34 glColor3f(red = 0, green = 0, blue = 0.7)
35 glVertex3f(x = 0, y = 0.9, z = -30)
39 glDeleteShader(shader = 1)
40 glDeleteShader(shader = 2)
41 glDeleteProgram(program = 3)