From 3a0cae8e5f3881cb1bcb02ab7fa4cbacf5b55525 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Thu, 18 Aug 2011 16:26:21 -0700 Subject: implement EGL_TEXTURE_EXTERNAL_OES in libagl this allows the emulator to display some graphics Change-Id: Ib4671ad70b8df598d02307f2b9c5b843421cea25 --- opengl/libagl/state.cpp | 3 +++ opengl/libagl/texture.cpp | 8 ++++---- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'opengl/libagl') diff --git a/opengl/libagl/state.cpp b/opengl/libagl/state.cpp index 8b4136a..90e9612 100644 --- a/opengl/libagl/state.cpp +++ b/opengl/libagl/state.cpp @@ -191,6 +191,9 @@ static void enable_disable(ogles_context_t* c, GLenum cap, int enabled) // these need to fall through into the rasterizer c->rasterizer.procs.enableDisable(c, cap, enabled); break; + case GL_TEXTURE_EXTERNAL_OES: + c->rasterizer.procs.enableDisable(c, GL_TEXTURE_2D, enabled); + break; case GL_MULTISAMPLE: case GL_SAMPLE_ALPHA_TO_COVERAGE: diff --git a/opengl/libagl/texture.cpp b/opengl/libagl/texture.cpp index 8eb17c4..88e8651 100644 --- a/opengl/libagl/texture.cpp +++ b/opengl/libagl/texture.cpp @@ -633,7 +633,7 @@ void generateMipmap(ogles_context_t* c, GLint level) static void texParameterx( GLenum target, GLenum pname, GLfixed param, ogles_context_t* c) { - if (target != GL_TEXTURE_2D) { + if (target != GL_TEXTURE_2D && target != GL_TEXTURE_EXTERNAL_OES) { ogles_error(c, GL_INVALID_ENUM); return; } @@ -866,7 +866,7 @@ void glActiveTexture(GLenum texture) void glBindTexture(GLenum target, GLuint texture) { ogles_context_t* c = ogles_context_t::get(); - if (target != GL_TEXTURE_2D) { + if (target != GL_TEXTURE_2D && target != GL_TEXTURE_EXTERNAL_OES) { ogles_error(c, GL_INVALID_ENUM); return; } @@ -1012,7 +1012,7 @@ void glTexParameteriv( GLenum target, GLenum pname, const GLint* params) { ogles_context_t* c = ogles_context_t::get(); - if (target != GGL_TEXTURE_2D) { + if (target != GL_TEXTURE_2D && target != GL_TEXTURE_EXTERNAL_OES) { ogles_error(c, GL_INVALID_ENUM); return; } @@ -1605,7 +1605,7 @@ void glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed w, GLfixed h) { void glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image) { ogles_context_t* c = ogles_context_t::get(); - if (target != GL_TEXTURE_2D) { + if (target != GL_TEXTURE_2D && target != GL_TEXTURE_EXTERNAL_OES) { ogles_error(c, GL_INVALID_ENUM); return; } -- cgit v1.1