| libAgl2 provides software GL ES 2.0 implementation using Pixelflinger2 in external/mesa3d |
| |
| To build, enable Android.mk, which builds libGLES_android.so, then replace the one built from libAgl in system/lib/egl. |
| ES 1.0 functions are not implemented and will cause exit, so do not setprop debug.egl.hw 0 until launcher is loaded. |
| |
| All functions have little to none error checking. |
| Not thread safe, Pixelflinger2 uses some static data. |
| |
| Most shader functions are implemented, however, most Get* functions for shaders/programs/uniforms/attribs are not. |
| No name system for shaders/programs, just using the pointers as names. |
| |
| Basic glTexImage2D, glTexSubImage2D, glCopyImage2D and glCopySubImage2D are implemented, with a range of 8/16/24/32bpp formats. |
| Cube map support is minimal. No mipmapping. |
| TexParameter is mostly implemented, supports texcoord wrap modes, and only linear for both min and mag, or nearest for both min and mag filtering. |
| Texture names are implemented, but bad. |
| |
| Frame buffer and render buffers are not implemented. |
| |
| Depth and stencil are implemented, but not tested. |
| Blending seems to work. |
| Colorbuffer supports RGBA_8888 and RGB_565. |
| |
| Vertex buffer objects are implemented. |
| Some GL_TRIANGLES and GL_TRIANGLE_STRIPS modes for glDrawArrays and glDrawElements are implemented, but vertex order is probably wrong so culling is disabled. |
| |
| Basic apps should work, and some libhwui should work, except for frame buffer operations, which will cause exit. |