|
- require("luaScript.cc.OpenglConstants")
-
- gl = gl or {}
-
- --Create functions
- function gl.createTexture()
- local retTable = {}
- retTable.texture_id = gl._createTexture()
- return retTable
- end
-
- function gl.createBuffer()
- local retTable = {}
- retTable.buffer_id = gl._createBuffer()
- return retTable
- end
-
- function gl.createRenderbuffer()
- local retTable = {}
- retTable.renderbuffer_id = gl._createRenderuffer()
- return retTable
- end
-
- function gl.createFramebuffer( )
- local retTable = {}
- retTable.framebuffer_id = gl._createFramebuffer()
- return retTable
- end
-
- function gl.createProgram()
- local retTable = {}
- retTable.program_id = gl._createProgram()
- return retTable
- end
-
- function gl.createShader(shaderType)
- local retTable = {}
- retTable.shader_id = gl._createShader(shaderType)
- return retTable
- end
-
- --Delete Fun
- function gl.deleteTexture(texture)
- local texture_id = 0
- if "number" == type(texture) then
- texture_id = texture
- elseif "table" == type(texture) then
- texture_id = texture.texture_id
- end
- gl._deleteTexture(texture_id)
- end
-
- function gl.deleteBuffer(buffer)
- local buffer_id = 0
- if "number" == type(buffer) then
- buffer_id = buffer
- elseif "table" == type(buffer) then
- buffer_id = buffer.buffer_id
- end
- gl._deleteBuffer(buffer_id)
- end
-
- function gl.deleteRenderbuffer(buffer)
- local renderbuffer_id = 0
- if "number" == type(buffer) then
- renderbuffer_id = buffer
- elseif "table" == type(buffer) then
- renderbuffer_id = buffer.renderbuffer_id
- end
- gl._deleteRenderbuffer(renderbuffer_id)
- end
-
- function gl.deleteFramebuffer(buffer)
- local framebuffer_id = 0
- if "number" == type(buffer) then
- framebuffer_id = buffer
- elseif "table" == type(buffer) then
- framebuffer_id = buffer.framebuffer_id
- end
- gl._deleteFramebuffer(framebuffer_id)
- end
-
- function gl.deleteProgram( program )
- local program_id = 0
- if "number" == type(buffer) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- gl._deleteProgram(program_id)
- end
-
- function gl.deleteShader(shader)
- local shader_id = 0
- if "number" == type(shader) then
- shader_id = shader
- elseif "table" == type(shader) then
- shader_id = shader.shader_id
- end
-
- gl._deleteShader(shader_id)
- end
-
- --Bind Related
- function gl.bindTexture(target, texture)
- local texture_id = 0
- if "number" == type(texture) then
- texture_id = texture
- elseif "table" == type(texture) then
- texture_id = texture.texture_id
- end
-
- gl._bindTexture(target,texture_id)
- end
-
- function gl.bindBuffer( target,buffer )
- local buffer_id = 0
- if "number" == type(buffer) then
- buffer_id = buffer
- elseif "table" == type(buffer) then
- buffer_id = buffer.buffer_id
- end
-
- gl._bindBuffer(target, buffer_id)
- end
-
- function gl.bindRenderBuffer(target, buffer)
- local buffer_id = 0
-
- if "number" == type(buffer) then
- buffer_id = buffer;
- elseif "table" == type(buffer) then
- buffer_id = buffer.buffer_id
- end
-
- gl._bindRenderbuffer(target, buffer_id)
- end
-
- function gl.bindFramebuffer(target, buffer)
- local buffer_id = 0
-
- if "number" == type(buffer) then
- buffer_id = buffer
- elseif "table" == type(buffer) then
- buffer_id = buffer.buffer_id
- end
-
- gl._bindFramebuffer(target, buffer_id)
- end
-
- --Uniform related
- function gl.getUniform(program, location)
- local program_id = 0
- local location_id = 0
-
- if "number" == type(program) then
- program_id = program
- else
- program_id = program.program_id
- end
-
- if "number" == type(location) then
- location_id = location
- else
- location_id = location.location_id
- end
-
- return gl._getUniform(program_id, location_id)
- end
-
- --shader related
- function gl.compileShader(shader)
- gl._compileShader( shader.shader_id)
- end
-
- function gl.shaderSource(shader, source)
- gl._shaderSource(shader.shader_id, source)
- end
-
- function gl.getShaderParameter(shader, e)
- return gl._getShaderParameter(shader.shader_id,e)
- end
-
- function gl.getShaderInfoLog( shader )
- return gl._getShaderInfoLog(shader.shader_id)
- end
-
- --program related
- function gl.attachShader( program, shader )
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- gl._attachShader(program_id, shader.shader_id)
- end
-
- function gl.linkProgram( program )
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- gl._linkProgram(program_id)
- end
-
- function gl.getProgramParameter(program, e)
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- return gl._getProgramParameter(program_id, e)
- end
-
- function gl.useProgram(program)
- local program_id = 0
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- gl._useProgram (program_id)
- end
-
- function gl.getAttribLocation(program, name )
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- return gl._getAttribLocation(program_id, name)
- end
-
- function gl.getUniformLocation( program, name )
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- return gl._getUniformLocation(program_id,name)
- end
-
- function gl.getActiveAttrib( program, index )
- local program_id = 0
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- return gl._getActiveAttrib(program_id, index);
- end
-
- function gl.getActiveUniform( program, index )
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- return gl._getActiveUniform(program_id, index)
- end
-
- function gl.getAttachedShaders(program)
- local program_id = 0
-
- if "number" == type(program) then
- program_id = program
- elseif "table" == type(program) then
- program_id = program.program_id
- end
-
- return gl._getAttachedShaders(program_id)
- end
-
- function gl.glNodeCreate()
- return cc.GLNode:create()
- end
|