lib/glesv2 & gamnit: update examples to the new API
authorAlexis Laferrière <alexis.laf@xymus.net>
Sun, 27 Sep 2015 15:58:05 +0000 (11:58 -0400)
committerAlexis Laferrière <alexis.laf@xymus.net>
Mon, 28 Sep 2015 13:03:39 +0000 (09:03 -0400)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

lib/gamnit/examples/triangle/src/portable_triangle.nit
lib/gamnit/examples/triangle/src/standalone_triangle.nit
lib/glesv2/examples/opengles2_hello_triangle.nit

index ac8e0e6..1bb3975 100644 (file)
@@ -54,8 +54,8 @@ redef class App
 
                # GL program
                program = new GLProgram
-               if not program.is_ok then
-                       print "Program is not ok: {gl.error.to_s}\nLog:"
+               if not glIsProgram(program) then
+                       print "Program is not ok: {glGetError.to_s}\nLog:"
                        print program.info_log
                        abort
                end
@@ -63,37 +63,37 @@ redef class App
 
                # Vertex shader
                vertex_shader = new GLVertexShader
-               assert vertex_shader.is_ok else print "Vertex shader is not ok: {gl.error}"
-               vertex_shader.source = """
+               assert glIsShader(vertex_shader) else print "Vertex shader is not ok: {glGetError}"
+               glShaderSource(vertex_shader, """
                attribute vec4 vPosition;
                void main()
                {
                  gl_Position = vPosition;
                }
-               """@glsl_vertex_shader.to_cstring
-               vertex_shader.compile
+               """@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
 
                # Fragment shader
                fragment_shader = new GLFragmentShader
-               assert fragment_shader.is_ok else print "Fragment shader is not ok: {gl.error}"
-               fragment_shader.source = """
+               assert glIsShader(fragment_shader) else print "Fragment shader is not ok: {glGetError}"
+               glShaderSource(fragment_shader, """
                precision mediump float;
                void main()
                {
                        gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
                }
-               """@glsl_fragment_shader.to_cstring
-               fragment_shader.compile
+               """@glsl_fragment_shader.to_cstring)
+               glCompileShader(fragment_shader)
                assert fragment_shader.is_compiled else print "Fragment shader compilation failed with: {fragment_shader.info_log}"
                assert_no_gl_error
 
                # Attach to program
-               program.attach_shader vertex_shader
-               program.attach_shader fragment_shader
+               glAttachShader(program, vertex_shader)
+               glAttachShader(program, fragment_shader)
                program.bind_attrib_location(0, "vPosition")
-               program.link
+               glLinkProgram program
                assert program.is_linked else print "Linking failed: {program.info_log}"
                assert_no_gl_error
 
@@ -107,15 +107,15 @@ redef class App
        do
                var display = display
                if display != null then
-                       gl.clear_color(0.5, 0.0, 0.5, 1.0)
+                       glClearColor(0.5, 0.5, 0.5, 1.0)
 
                        assert_no_gl_error
-                       gl.viewport(0, 0, display.width, display.height)
-                       gl.clear((new GLBuffer).color)
-                       program.use
+                       glViewport(0, 0, display.width, display.height)
+                       glClear gl_COLOR_BUFFER_BIT
+                       glUseProgram program
                        vertex_array.enable
 
-                       glDrawArrays(new GLDrawMode.triangles, 0, 3)
+                       glDrawArrays(gl_TRIANGLES, 0, 3)
 
                        display.flip
                end
@@ -124,9 +124,9 @@ redef class App
        redef fun on_stop
        do
                # Clean up
-               program.delete
-               vertex_shader.delete
-               fragment_shader.delete
+               glDeleteProgram program
+               glDeleteShader vertex_shader
+               glDeleteShader fragment_shader
 
                # Close gamnit
                var display = display
index 04e14db..209597f 100644 (file)
@@ -40,10 +40,10 @@ assert_no_gl_error
 assert gl.shader_compiler else print "Cannot compile shaders"
 
 # GL program
-print gl.error.to_s
+print glGetError.to_s
 var program = new GLProgram
-if not program.is_ok then
-       print "Program is not ok: {gl.error.to_s}\nLog:"
+if not glIsProgram(program) then
+       print "Program is not ok: {glGetError.to_s}\nLog:"
        print program.info_log
        abort
 end
@@ -51,37 +51,37 @@ assert_no_gl_error
 
 # Vertex shader
 var vertex_shader = new GLVertexShader
-assert vertex_shader.is_ok else print "Vertex shader is not ok: {gl.error}"
-vertex_shader.source = """
+assert glIsShader(vertex_shader) else print "Vertex shader is not ok: {glGetError}"
+glShaderSource(vertex_shader, """
 attribute vec4 vPosition;
 void main()
 {
   gl_Position = vPosition;
 }
-"""@glsl_vertex_shader.to_cstring
-vertex_shader.compile
+"""@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
 
 # Fragment shader
 var fragment_shader = new GLFragmentShader
-assert fragment_shader.is_ok else print "Fragment shader is not ok: {gl.error}"
-fragment_shader.source = """
+assert glIsShader(fragment_shader) else print "Fragment shader is not ok: {glGetError}"
+glShaderSource(fragment_shader, """
 precision mediump float;
 void main()
 {
        gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
 }
-"""@glsl_fragment_shader.to_cstring
-fragment_shader.compile
+"""@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
 
 # Attach to program
-program.attach_shader vertex_shader
-program.attach_shader fragment_shader
+glAttachShader(program, vertex_shader)
+glAttachShader(program, fragment_shader)
 program.bind_attrib_location(0, "vPosition")
-program.link
+glLinkProgram program
 assert program.is_linked else print "Linking failed: {program.info_log}"
 assert_no_gl_error
 
@@ -89,24 +89,24 @@ assert_no_gl_error
 var vertices = [0.0, 0.5, 0.0, -0.5, -0.5, 0.0, 0.5, -0.5, 0.0]
 var vertex_array = new VertexArray(0, 3, vertices)
 vertex_array.attrib_pointer
-gl.clear_color(0.5, 0.0, 0.5, 1.0)
+glClearColor(0.5, 0.0, 0.5, 1.0)
 for i in [0..1000[ do
        printn "."
        assert_no_gl_error
-       gl.viewport(0, 0, width, height)
-       gl.clear((new GLBuffer).color)
-       program.use
+       glViewport(0, 0, width, height)
+       glClear gl_COLOR_BUFFER_BIT
+       glUseProgram program
        vertex_array.enable
 
-       glDrawArrays(new GLDrawMode.triangles, 0, 3)
+       glDrawArrays(gl_TRIANGLES, 0, 3)
 
        display.flip
 end
 
 # Clean up
-program.delete
-vertex_shader.delete
-fragment_shader.delete
+glDeleteProgram program
+glDeleteShader vertex_shader
+glDeleteShader fragment_shader
 
 # Close gamnit
 display.close
index 3a1e1c5..340c307 100644 (file)
@@ -112,10 +112,10 @@ assert_no_gl_error
 assert gl.shader_compiler else print "Cannot compile shaders"
 
 # gl program
-print gl.error.to_s
+print glGetError.to_s
 var program = new GLProgram
-if not program.is_ok then
-       print "Program is not ok: {gl.error.to_s}\nLog:"
+if not glIsProgram(program) then
+       print "Program is not ok: {glGetError.to_s}\nLog:"
        print program.info_log
        abort
 end
@@ -123,36 +123,36 @@ assert_no_gl_error
 
 # vertex shader
 var vertex_shader = new GLVertexShader
-assert vertex_shader.is_ok else print "Vertex shader is not ok: {gl.error}"
-vertex_shader.source = """
+assert glIsShader(vertex_shader) else print "Vertex shader is not ok: {glGetError}"
+glShaderSource(vertex_shader, """
 attribute vec4 vPosition;
 void main()
 {
   gl_Position = vPosition;
 }
-""".to_cstring
-vertex_shader.compile
+""".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
 
 # fragment shader
 var fragment_shader = new GLFragmentShader
-assert fragment_shader.is_ok else print "Fragment shader is not ok: {gl.error}"
-fragment_shader.source = """
+assert glIsShader(fragment_shader) else print "Fragment shader is not ok: {glGetError}"
+glShaderSource(fragment_shader, """
 precision mediump float;
 void main()
 {
        gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
 }
-""".to_cstring
-fragment_shader.compile
+""".to_cstring)
+glCompileShader(fragment_shader)
 assert fragment_shader.is_compiled else print "Fragment shader compilation failed with: {fragment_shader.info_log}"
 assert_no_gl_error
 
-program.attach_shader vertex_shader
-program.attach_shader fragment_shader
+glAttachShader(program, vertex_shader)
+glAttachShader(program, fragment_shader)
 program.bind_attrib_location(0, "vPosition")
-program.link
+glLinkProgram program
 assert program.is_linked else print "Linking failed: {program.info_log}"
 assert_no_gl_error
 
@@ -160,30 +160,30 @@ assert_no_gl_error
 var vertices = [0.0, 0.5, 0.0, -0.5, -0.5, 0.0, 0.5, -0.5, 0.0]
 var vertex_array = new VertexArray(0, 3, vertices)
 vertex_array.attrib_pointer
-gl.clear_color(0.5, 0.0, 0.5, 1.0)
+glClearColor(0.5, 0.0, 0.5, 1.0)
 for i in [0..10000[ do
        printn "."
        assert_no_gl_error
-       gl.viewport(0, 0, width, height)
-       gl.clear((new GLBuffer).color)
-       program.use
+       glViewport(0, 0, width, height)
+       glClear gl_COLOR_BUFFER_BIT
+       glUseProgram program
        vertex_array.enable
-       glDrawArrays(new GLDrawMode.triangles, 0, 3)
+       glDrawArrays(gl_TRIANGLES, 0, 3)
        egl_display.swap_buffers(surface)
 end
 
 # delete
-program.delete
-vertex_shader.delete
-fragment_shader.delete
+glDeleteProgram program
+glDeleteShader vertex_shader
+glDeleteShader fragment_shader
 
 #
 ## EGL
 #
 # close
 egl_display.make_current(new EGLSurface.none, new EGLSurface.none, new EGLContext.none)
-egl_display.destroy_context(context)
-egl_display.destroy_surface(surface)
+egl_display.destroy_context context
+egl_display.destroy_surface surface
 
 #
 ## SDL