blob: 13c28ce012dcb1e0f967f3d2582bb94b247f54f8 [file] [log] [blame]
David Liaf94ceb2011-03-01 16:54:04 -08001#include "gles2context.h"
2
3static char const * const gVendorString = "Android";
4static char const * const gRendererString = "Android PixelFlinger2 0.0";
5static char const * const gVersionString = "OpenGL ES 2.0";
6static 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
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
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}