added missing ogl functions

This commit is contained in:
Michael Bickel
2014-02-11 03:38:52 +01:00
parent 14ab05b950
commit 17676b63b3
4 changed files with 40 additions and 1 deletions

View File

@@ -593,6 +593,7 @@ class GL {
public static function cullFace(mode:Int):Void public static function cullFace(mode:Int):Void
{ {
lime_gl_cull_face(mode);
} }
public static function deleteBuffer(buffer:GLBuffer):Void public static function deleteBuffer(buffer:GLBuffer):Void
@@ -603,6 +604,8 @@ class GL {
public static function deleteFramebuffer(framebuffer:GLFramebuffer):Void public static function deleteFramebuffer(framebuffer:GLFramebuffer):Void
{ {
lime_gl_delete_framebuffer(framebuffer.id);
framebuffer.invalidate();
} }
public static function deleteProgram(program:GLProgram):Void public static function deleteProgram(program:GLProgram):Void
@@ -613,6 +616,8 @@ class GL {
public static function deleteRenderbuffer(renderbuffer:GLRenderbuffer):Void public static function deleteRenderbuffer(renderbuffer:GLRenderbuffer):Void
{ {
lime_gl_delete_render_buffer(renderbuffer.id);
renderbuffer.invalidate();
} }
public static function deleteShader(shader:GLShader):Void public static function deleteShader(shader:GLShader):Void
@@ -1191,8 +1196,11 @@ class GL {
private static var lime_gl_create_render_buffer = load("lime_gl_create_render_buffer", 0); private static var lime_gl_create_render_buffer = load("lime_gl_create_render_buffer", 0);
private static var lime_gl_create_shader = load("lime_gl_create_shader", 1); private static var lime_gl_create_shader = load("lime_gl_create_shader", 1);
private static var lime_gl_create_texture = load("lime_gl_create_texture", 0); private static var lime_gl_create_texture = load("lime_gl_create_texture", 0);
private static var lime_gl_cull_face = load("lime_gl_cull_face", 1);
private static var lime_gl_delete_buffer = load("lime_gl_delete_buffer", 1); private static var lime_gl_delete_buffer = load("lime_gl_delete_buffer", 1);
private static var lime_gl_delete_framebuffer = load("lime_gl_delete_framebuffer", 1);
private static var lime_gl_delete_program = load("lime_gl_delete_program", 1); private static var lime_gl_delete_program = load("lime_gl_delete_program", 1);
private static var lime_gl_delete_render_buffer = load("lime_gl_delete_render_buffer", 1);
private static var lime_gl_delete_shader = load("lime_gl_delete_shader", 1); private static var lime_gl_delete_shader = load("lime_gl_delete_shader", 1);
private static var lime_gl_delete_texture = load("lime_gl_delete_texture", 1); private static var lime_gl_delete_texture = load("lime_gl_delete_texture", 1);
private static var lime_gl_depth_func = load("lime_gl_depth_func", 1); private static var lime_gl_depth_func = load("lime_gl_depth_func", 1);

View File

@@ -70,7 +70,9 @@ using namespace Tizen::Graphics::Opengl;
#define glBindFramebuffer glBindFramebufferEXT #define glBindFramebuffer glBindFramebufferEXT
#define glBindRenderbuffer glBindRenderbufferEXT #define glBindRenderbuffer glBindRenderbufferEXT
#define glGenFramebuffers glGenFramebuffersEXT #define glGenFramebuffers glGenFramebuffersEXT
#define glDeleteFramebuffers glDeleteFramebuffersEXT
#define glGenRenderbuffers glGenRenderbuffersEXT #define glGenRenderbuffers glGenRenderbuffersEXT
#define glDeleteRenderbuffers glDeleteRenderbuffersEXT
#define glFramebufferRenderbuffer glFramebufferRenderbufferEXT #define glFramebufferRenderbuffer glFramebufferRenderbufferEXT
#define glFramebufferTexture2D glFramebufferTexture2DEXT #define glFramebufferTexture2D glFramebufferTexture2DEXT
#define glRenderbufferStorage glRenderbufferStorageEXT #define glRenderbufferStorage glRenderbufferStorageEXT

View File

@@ -75,6 +75,7 @@ OGL_EXT(glBufferSubData,void,(GLenum, GLintptr, GLsizeiptr, const GLvoid *));
OGL_EXT(glGetBufferParameteriv,void,(GLenum, GLenum, GLint *)); OGL_EXT(glGetBufferParameteriv,void,(GLenum, GLenum, GLint *));
OGL_EXT(glBindFramebuffer,void,(GLenum, GLuint)); OGL_EXT(glBindFramebuffer,void,(GLenum, GLuint));
OGL_EXT(glGenFramebuffers,void,(GLsizei, GLuint *)); OGL_EXT(glGenFramebuffers,void,(GLsizei, GLuint *));
OGL_EXT(glDeleteFramebuffers,void,(GLsizei, const GLuint *));
OGL_EXT(glBindRenderbuffer,void,(GLenum, GLuint)); OGL_EXT(glBindRenderbuffer,void,(GLenum, GLuint));
OGL_EXT(glFramebufferRenderbuffer,void,(GLenum, GLenum, GLenum, GLuint)); OGL_EXT(glFramebufferRenderbuffer,void,(GLenum, GLenum, GLenum, GLuint));
OGL_EXT(glFramebufferTexture2D,void,(GLenum, GLenum, GLenum, GLuint, GLint)); OGL_EXT(glFramebufferTexture2D,void,(GLenum, GLenum, GLenum, GLuint, GLint));
@@ -85,6 +86,7 @@ OGL_EXT(glCompressedTexSubImage2D,void,(GLenum, GLint, GLint, GLint, GLsizei, GL
OGL_EXT(glCompressedTexImage2D,void,(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)); OGL_EXT(glCompressedTexImage2D,void,(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *));
OGL_EXT(glGenerateMipmap,void,(GLenum)); OGL_EXT(glGenerateMipmap,void,(GLenum));
OGL_EXT(glGenRenderbuffers,void,(GLsizei, GLuint *)); OGL_EXT(glGenRenderbuffers,void,(GLsizei, GLuint *));
OGL_EXT(glDeleteRenderbuffers,void,(GLsizei, const GLuint *));
OGL_EXT(glGetFramebufferAttachmentParameteriv,void,(GLenum, GLenum, GLenum, GLint *)); OGL_EXT(glGetFramebufferAttachmentParameteriv,void,(GLenum, GLenum, GLenum, GLint *));
OGL_EXT(glGetRenderbufferParameteriv,void,(GLenum, GLenum, GLint *)); OGL_EXT(glGetRenderbufferParameteriv,void,(GLenum, GLenum, GLint *));

View File

@@ -222,7 +222,7 @@ value lime_gl_get_parameter(value pname_val)
//case GL_MAX_VARYING_VECTORS: //case GL_MAX_VARYING_VECTORS:
case GL_MAX_VERTEX_ATTRIBS: case GL_MAX_VERTEX_ATTRIBS:
case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS:
//case GL_MAX_VERTEX_UNIFORM_VECTORS: case GL_MAX_VERTEX_UNIFORM_VECTORS:
case GL_NUM_COMPRESSED_TEXTURE_FORMATS: case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
case GL_PACK_ALIGNMENT: case GL_PACK_ALIGNMENT:
case GL_RED_BITS: case GL_RED_BITS:
@@ -1284,6 +1284,16 @@ value lime_gl_create_framebuffer( )
} }
DEFINE_PRIM(lime_gl_create_framebuffer,0); DEFINE_PRIM(lime_gl_create_framebuffer,0);
value lime_gl_delete_framebuffer(value target)
{
#ifndef HX_LINUX
GLuint id = val_int(target);
if (&glDeleteFramebuffers) glDeleteFramebuffers(1, &id);
#endif
return alloc_null();
}
DEFINE_PRIM(lime_gl_delete_framebuffer,1);
value lime_gl_create_render_buffer( ) value lime_gl_create_render_buffer( )
{ {
GLuint id = 0; GLuint id = 0;
@@ -1294,6 +1304,16 @@ value lime_gl_create_render_buffer( )
} }
DEFINE_PRIM(lime_gl_create_render_buffer,0); DEFINE_PRIM(lime_gl_create_render_buffer,0);
value lime_gl_delete_render_buffer(value target)
{
#ifndef HX_LINUX
GLuint id = val_int(target);
if (&glDeleteRenderbuffers) glDeleteRenderbuffers(1, &id);
#endif
return alloc_null();
}
DEFINE_PRIM(lime_gl_delete_render_buffer,1);
value lime_gl_framebuffer_renderbuffer(value target, value attachment, value renderbuffertarget, value renderbuffer) value lime_gl_framebuffer_renderbuffer(value target, value attachment, value renderbuffertarget, value renderbuffer)
{ {
#ifndef HX_LINUX #ifndef HX_LINUX
@@ -1462,6 +1482,13 @@ value lime_gl_depth_range(value inNear, value inFar)
DEFINE_PRIM(lime_gl_depth_range,2); DEFINE_PRIM(lime_gl_depth_range,2);
value lime_gl_cull_face(value mode)
{
glCullFace(val_int(mode));
return alloc_null();
}
DEFINE_PRIM(lime_gl_cull_face,1);
value lime_gl_polygon_offset(value factor, value units) value lime_gl_polygon_offset(value factor, value units)
{ {