aa1f54d78f
Somewhat functional, refer to README for details. Need to enable Android.mk to build. It builds libGLES_android.so, which needs to replace the one in system/lib/egl built by libagl. Change-Id: Iec3aaa8f3963a4185d81955cd24019eb0c4a5850 Signed-off-by: David Li <davidxli@google.com>
27 lines
1.4 KiB
Plaintext
27 lines
1.4 KiB
Plaintext
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.
|