1 #include "gles2context.h" 2 3 static char const * const gVendorString = "Android"; 4 static char const * const gRendererString = "Android PixelFlinger2 0.0"; 5 static char const * const gVersionString = "OpenGL ES 2.0"; 6 static char const * const gExtensionsString = 7 // "GL_OES_byte_coordinates " // OK 8 // "GL_OES_fixed_point " // OK 9 // "GL_OES_single_precision " // OK 10 // "GL_OES_read_format " // OK 11 // "GL_OES_compressed_paletted_texture " // OK 12 // "GL_OES_draw_texture " // OK 13 // "GL_OES_matrix_get " // OK 14 // "GL_OES_query_matrix " // OK 15 // // "GL_OES_point_size_array " // TODO 16 // // "GL_OES_point_sprite " // TODO 17 // "GL_OES_EGL_image " // OK 18 //#ifdef GL_OES_compressed_ETC1_RGB8_texture 19 // "GL_OES_compressed_ETC1_RGB8_texture " // OK 20 //#endif 21 // "GL_ARB_texture_compression " // OK 22 // "GL_ARB_texture_non_power_of_two " // OK 23 // "GL_ANDROID_user_clip_plane " // OK 24 // "GL_ANDROID_vertex_buffer_object " // OK 25 // "GL_ANDROID_generate_mipmap " // OK 26 "" 27 ; 28 glGetIntegerv(GLenum pname,GLint * params)29void glGetIntegerv(GLenum pname, GLint* params) 30 { 31 switch (pname) { 32 case GL_MAX_TEXTURE_SIZE : 33 *params = 4096; // limit is in precision of texcoord calculation, which uses 16.16 34 break; 35 case GL_MAX_VERTEX_ATTRIBS: 36 *params = GGL_MAXVERTEXATTRIBS; 37 break; 38 case GL_MAX_VERTEX_UNIFORM_VECTORS: 39 *params = GGL_MAXVERTEXUNIFORMVECTORS; 40 break; 41 case GL_MAX_VARYING_VECTORS: 42 *params = GGL_MAXVARYINGVECTORS; 43 break; 44 case GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS: 45 *params = GGL_MAXCOMBINEDTEXTUREIMAGEUNITS; 46 break; 47 case GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS: 48 *params = GGL_MAXVERTEXTEXTUREIMAGEUNITS; 49 break; 50 case GL_MAX_TEXTURE_IMAGE_UNITS: 51 *params = GGL_MAXTEXTUREIMAGEUNITS; 52 break; 53 case GL_MAX_FRAGMENT_UNIFORM_VECTORS: 54 *params = GGL_MAXFRAGMENTUNIFORMVECTORS; 55 break; 56 case GL_ALIASED_LINE_WIDTH_RANGE: 57 *params = 1; // TODO: not implemented 58 break; 59 default: 60 LOGD("agl2: glGetIntegerv 0x%.4X", pname); 61 assert(0); 62 } 63 } 64 glGetString(GLenum name)65const GLubyte* glGetString(GLenum name) 66 { 67 switch (name) { 68 case GL_VENDOR: 69 return (const GLubyte*)gVendorString; 70 case GL_RENDERER: 71 return (const GLubyte*)gRendererString; 72 case GL_VERSION: 73 return (const GLubyte*)gVersionString; 74 case GL_EXTENSIONS: 75 return (const GLubyte*)gExtensionsString; 76 } 77 assert(0); //(c, GL_INVALID_ENUM); 78 return 0; 79 } 80