examples: annotate examples
[nit.git] / lib / gamnit / examples / triangle / src / standalone_triangle.nit
index 209597f..a766fb2 100644 (file)
@@ -19,7 +19,7 @@
 # References:
 # * The book OpenGL ES 2.0 Programming Guide
 # * https://code.google.com/p/opengles-book-samples/source/browse/trunk/LinuxX11/Chapter_2/Hello_Triangle/Hello_Triangle.c
-module standalone_triangle
+module standalone_triangle is example
 
 import app
 import gamnit::display
@@ -36,7 +36,7 @@ print "Width: {width}"
 print "Height: {height}"
 
 # Custom calls to OpenGL ES 2.0
-assert_no_gl_error
+assert glGetError == gl_NO_ERROR
 assert gl.shader_compiler else print "Cannot compile shaders"
 
 # GL program
@@ -44,10 +44,10 @@ print glGetError.to_s
 var program = new GLProgram
 if not glIsProgram(program) then
        print "Program is not ok: {glGetError.to_s}\nLog:"
-       print program.info_log
+       print glGetProgramInfoLog(program)
        abort
 end
-assert_no_gl_error
+assert glGetError == gl_NO_ERROR
 
 # Vertex shader
 var vertex_shader = new GLVertexShader
@@ -60,8 +60,8 @@ void main()
 }
 """@glsl_vertex_shader.to_cstring)
 glCompileShader vertex_shader
-assert vertex_shader.is_compiled else print "Vertex shader compilation failed with: {vertex_shader.info_log} {program.info_log}"
-assert_no_gl_error
+assert vertex_shader.is_compiled else print "Vertex shader compilation failed with: {glGetShaderInfoLog(vertex_shader)} {glGetProgramInfoLog(program)}"
+assert glGetError == gl_NO_ERROR
 
 # Fragment shader
 var fragment_shader = new GLFragmentShader
@@ -73,17 +73,17 @@ void main()
        gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
 }
 """@glsl_fragment_shader.to_cstring)
-glIsShader fragment_shader
-assert fragment_shader.is_compiled else print "Fragment shader compilation failed with: {fragment_shader.info_log}"
-assert_no_gl_error
+glCompileShader fragment_shader
+assert fragment_shader.is_compiled else print "Fragment shader compilation failed with: {glGetShaderInfoLog(fragment_shader)}"
+assert glGetError == gl_NO_ERROR
 
 # Attach to program
 glAttachShader(program, vertex_shader)
 glAttachShader(program, fragment_shader)
 program.bind_attrib_location(0, "vPosition")
 glLinkProgram program
-assert program.is_linked else print "Linking failed: {program.info_log}"
-assert_no_gl_error
+assert program.is_linked else print "Linking failed: {glGetProgramInfoLog(program)}"
+assert glGetError == gl_NO_ERROR
 
 # Draw!
 var vertices = [0.0, 0.5, 0.0, -0.5, -0.5, 0.0, 0.5, -0.5, 0.0]
@@ -92,7 +92,7 @@ vertex_array.attrib_pointer
 glClearColor(0.5, 0.0, 0.5, 1.0)
 for i in [0..1000[ do
        printn "."
-       assert_no_gl_error
+       assert glGetError == gl_NO_ERROR
        glViewport(0, 0, width, height)
        glClear gl_COLOR_BUFFER_BIT
        glUseProgram program