X-Git-Url: https://deadsoftware.ru/gitweb?p=nanogl.git;a=blobdiff_plain;f=nanogl.cpp;h=c8454b079163a82e5796de264ea3f41f5bdd6314;hp=5f97fedb31343614e90665792f708383dcebe332;hb=1064c9c73b953909de2476f99402f8209aa60ea8;hpb=a1e879f5cb6fc16ca3b31c47ab4881555c3e1d2c diff --git a/nanogl.cpp b/nanogl.cpp index 5f97fed..c8454b0 100644 --- a/nanogl.cpp +++ b/nanogl.cpp @@ -144,9 +144,9 @@ static int CreateGlEsInterface( const char * name, void * lib, void * lib1, void if ( f == NULL ) { LOGE ( "<%s> not found in libEGL.so", *api); if( glEsImpl->eglGetProcAddress && ( (void*)glEsImpl->eglGetProcAddress != (void*)gl_unimplemented ) ) - f = glEsImpl->eglGetProcAddress( *api ); + f = (void*)glEsImpl->eglGetProcAddress( *api ); if(f == NULL) - f = default_func; //(void*)gl_unimplemented; + f = (void*)default_func; //(void*)gl_unimplemented; } else { @@ -157,9 +157,9 @@ static int CreateGlEsInterface( const char * name, void * lib, void * lib1, void { LOGE ( "libEGL.so not loaded!"); if( glEsImpl->eglGetProcAddress && ( (void*)glEsImpl->eglGetProcAddress != (void*)gl_unimplemented ) ) - f = glEsImpl->eglGetProcAddress( *api ); + f = (void*)glEsImpl->eglGetProcAddress( *api ); if( !f ) - f = default_func; + f = (void*)default_func; } } else { @@ -285,6 +285,19 @@ int nanoGL_Init() return 0; } +#ifdef __ANDROID__ + // somewhy it does not initialize correctly + *((void**)&glEsImpl->glGenFramebuffers) = (void*)glEsImpl->eglGetProcAddress( "glGenFramebuffersOES" ); + *((void**)&glEsImpl->glGenRenderbuffers) = (void*)glEsImpl->eglGetProcAddress( "glGenRenderbuffersOES" ); + *((void**)&glEsImpl->glRenderbufferStorage) = (void*)glEsImpl->eglGetProcAddress( "glRenderbufferStorageOES" ); + *((void**)&glEsImpl->glBindFramebuffer) = (void*)glEsImpl->eglGetProcAddress( "glBindFramebufferOES" ); + *((void**)&glEsImpl->glBindRenderbuffer) = (void*)glEsImpl->eglGetProcAddress( "glBindRenderbufferOES" ); + *((void**)&glEsImpl->glFramebufferTexture2D) = (void*)glEsImpl->eglGetProcAddress( "glFramebufferTexture2DOES" ); + *((void**)&glEsImpl->glDeleteRenderbuffers) = (void*)glEsImpl->eglGetProcAddress( "glDeleteRenderbuffersOES" ); + *((void**)&glEsImpl->glDeleteFramebuffers) = (void*)glEsImpl->eglGetProcAddress( "glDeleteFramebuffersOES" ); + *((void**)&glEsImpl->glFramebufferRenderbuffer) = (void*)glEsImpl->eglGetProcAddress( "glFramebufferRenderbufferOES" ); +#endif + // Init nanoGL InitGLStructs(); return 1;