summaryrefslogtreecommitdiffstats
path: root/opengl/libagl
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge change Ide4c8cbc into eclairAndroid (Google) Code Review2009-10-191-0/+5
|\ \ \ \ | |/ / / | | | | | | | | | | | | * changes: fix [2151588] glTexSubImage2D() allows pixel format conversion
| * | | fix [2151588] glTexSubImage2D() allows pixel format conversionMathias Agopian2009-10-191-0/+5
| | | |
* | | | one step towards fixing [2071412] work around mdp 32-bits fade limitationMathias Agopian2009-10-161-41/+44
|/ / / | | | | | | | | | simplify the GL_MODULATE case and allow blending disabled with RGBA texture
* | | fix [2147737] Pixel Flinger needs to set EGL_RENDERABLE_TYPE to ↵Mathias Agopian2009-09-271-1/+2
| | | | | | | | | | | | | | | | | | EGL_OPENGL_ES_BIT Also set max swap interval to 1, which is the only supported value currently.
* | | OpenGL ES doesn't allow glColorPointer with a size parameter other than 4Mathias Agopian2009-09-241-3/+1
| | |
* | | AGL's glCompressedTexImage2D now checks the imageSize parameter.Jack Palevich2009-09-101-5/+55
| | | | | | | | | | | | | | | | | | This parameter indicates how many bytes of the image data are valid. Previously this parameter was ignored.
* | | Calculate specular lighting correctlyMartin Storsjo2009-08-251-3/+8
| | | | | | | | | | | | | | | | | | Since the lighting calculations are done in object space, the vector from the object to the viewer also needs to be transformed to object space.
* | | If FLAGS_2D_PROJECTION is set, the MVP matrices need updating when changing ↵Martin Storsjo2009-08-251-0/+2
| | | | | | | | | | | | the viewport.
* | | better error handling in EGLMathias Agopian2009-08-201-12/+46
| | |
* | | second take, hopefully this time it doesn't break one of the builds: ↵Mathias Agopian2009-08-111-0/+4
| | | | | | | | | | | | "SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything."
* | | Revert "SurfaceFlinger will now allocate buffers based on the usage ↵Fred Quintana2009-08-111-4/+0
| | | | | | | | | | | | | | | | | | specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything." This reverts commit 8b76a0ac6fbf07254629ed1ea86af014d5abe050.
* | | SurfaceFlinger will now allocate buffers based on the usage specified by the ↵Mathias Agopian2009-08-111-0/+4
| | | | | | | | | | | | | | | | | | | | | clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything. This change makes SurfaceHolder.setType(GPU) obsolete (it's now ignored). Added an API to android_native_window_t to allow extending the functionality without ever breaking binary compatibility. This is used to implement the new set_usage() API. This API needs to be called by software renderers because the default is to use usage flags suitable for h/w.
* | | add support for RGBX_8888Mathias Agopian2009-08-071-0/+2
| | |
* | | be more robust when errors occur upon EGL surface creation (ie: don't crash)Mathias Agopian2009-07-311-9/+18
| | |
* | | fixed some issues with the software renderer when surfaces are made current.Mathias Agopian2009-07-301-19/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | there was several issues: - when a surface was made non-current, the last frame wasn't shown and the buffer could stay locked - when a surface was made current the 2nd time, it would not dequeue a new buffer now, queue/dequeue are done when the surface is made current. for this to work, a new query() hook had to be added on android_native_window_t, it allows to retrieve some attributes of a window (currently only width and height).
* | | Merge commit 'goog/readonly-korg-master' into merge_korg_masterJean-Baptiste Queru2009-07-161-1/+1
|\ \ \ | |/ / | | | | | | | | | | | | * commit 'goog/readonly-korg-master': Fixed Android issue #400, where the Intent documentation was inaccurate in a number of places, undoubtedly causing untold grief to innumerable masses. Bug Fixed for libagl.
| * | Bug Fixed for libagl.Shin-ichiro KAWASAKI2009-07-071-1/+1
| |/
| * Automated import from //branches/cupcake/...@142481,142481Jack Palevich2009-03-241-6/+18
| |
* | remove libagl's dependency on gralloc_priv.hMathias Agopian2009-07-154-23/+8
| |
* | am 46e28db8: Merge change 6713 into donutAndroid (Google) Code Review2009-07-091-1/+1
|\ \ | | | | | | | | | | | | | | | | | | Merge commit '46e28db8818332e3cda4cc410cc89a1ed7ce4db6' * commit '46e28db8818332e3cda4cc410cc89a1ed7ce4db6': fix for [1969185] valgrind errors in new gl stuff
| * | fix for [1969185] valgrind errors in new gl stuffMathias Agopian2009-07-091-1/+1
| | |
* | | fix a bug where gl didn't always fallback to software when copybit failed. ↵Mathias Agopian2009-06-291-13/+17
| | | | | | | | | | | | minor optimizations to copybit codepath.
* | | use copybit for eglSwapBuffers() copy-back operationsMathias Agopian2009-06-251-52/+109
| | |
* | | Add eglGetRenderBufferANDROID() extension, which returns the current render ↵Mathias Agopian2009-06-252-6/+40
| | | | | | | | | | | | buffer as an android_native_buffer_t*
* | | copybit now uses a native_handle_t* instead of a fd/offsetMathias Agopian2009-06-241-6/+1
| | |
* | | merge master in master_glMathias Agopian2009-06-241-1/+8
|\ \ \ | |/ /
| * | add glTexParameteri() and fix glTexParameteriv()Mathias Agopian2009-06-221-1/+8
| | |
* | | fix a bug where copybit would be rejected in landscape modeMathias Agopian2009-06-231-15/+30
| | |
* | | we were not fetching the texture coords in the copybit case, so we were ↵Mathias Agopian2009-06-181-1/+15
| | | | | | | | | | | | using garbage
* | | fix/add some commentsMathias Agopian2009-06-171-4/+12
| | |
* | | s/w OpenGL no detects and handles all any combinations of triangle fans ↵Mathias Agopian2009-06-173-77/+122
| | | | | | | | | | | | | | | | | | corresponding to a rectangle this allows fallback to faster copybit code in almost all cases.
* | | fix a scissor bug in the GLES-on-top-of copybit codeMathias Agopian2009-06-161-17/+14
| | |
* | | fix a bug where copybit only renders in the first buffer when used with s/w GLMathias Agopian2009-06-107-26/+31
| | |
* | | Merge commit 'goog/master' into merge_masterMathias Agopian2009-06-053-78/+44
|\ \ \ | |/ /
| * | fix [1610840] Positional light doesn't work correctly on emulatorMathias Agopian2009-06-033-78/+39
| | | | | | | | | | | | | | | | | | | | | | | | This bug was introduced when lighting computations was changed from eye-space to object-space. The light position need to be transformed back to object-space each time the modelview matrix changes which requires us to compute the inverse of the modelview matrix. This computation was done with the assumption that normals where transformed (which was the case when the computation was made in eye-space), however, normals only require the inverse of the upper 3x3 matrix while transforming positions requires the inverse of the whole matrix. This caused the interesting behavior that lights were more-or-less transformed properly, but not translated at all, which caused improper lighting with directional lights in particular. There was also another smaller bug affecting directional lights: when vertices are read, only the active component are read, the other ones are ignored, later, the transformation operations are set up to ignore the unset values, howver, in the case of lighting, we use the vertex in object space (that is, before it is transformed), and therefore were using uninitalized values; in particular w.
| * | fix a bug in GL lighting where the specular component could be ommited when ↵Mathias Agopian2009-06-021-0/+5
| | | | | | | | | | | | | | | | | | vertex material was disabled. the specular enable flag wasn't computed in that case.
* | | make sure clear the draw and read EGLSurface when eglMakeCurrent() is called ↵Mathias Agopian2009-06-031-1/+3
| | | | | | | | | | | | for unbinding from the thread
* | | fix/clean these Android.mk following dbort and joeo's commentsMathias Agopian2009-06-031-2/+3
| | |
* | | implement a real loader for EGL driversMathias Agopian2009-05-281-1/+3
| | | | | | | | | | | | | | | we now look for a config file in /system/lib/egl/egl.cfg that describes the association of a display to a driver. these drivers are named: /system/lib/egl/lib{[EGL|GLESv1_CM|GLESv2] | GLES}_$TAG.so
* | | Merge commit 'goog/master' into merge_masterMathias Agopian2009-05-141-0/+2
|\ \ \ | |/ / | | | | | | | | | | | | | | | Conflicts: opengl/libagl/Android.mk opengl/libs/Android.mk opengl/libs/egl_impl.h
| * | only export the GL entry-points, hide everything else.Mathias Agopian2009-05-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Conflicts: opengl/libagl/Android.mk opengl/libs/Android.mk opengl/libs/egl_impl.h
| * | integrate some OpenGL ES changes back from master_gl in preparation of ↵Mathias Agopian2009-04-231-25/+43
| | | | | | | | | | | | opening GLES to the NDK.
| * | Automated import from //branches/donutburger/...@142484,142484Jack Palevich2009-03-241-6/+18
| |/
* | fix EGL extension string namesMathias Agopian2009-05-071-1/+1
| |
* | created an new EGL extension called ANDROID_swap_rectangleMathias Agopian2009-05-071-26/+243
| | | | | | | | | | | | ANDROID_swap_rectangle allows to specify the rectangle affected by eglSwapBuffers(), anything outside of this rectangle is unchanged. in particular EGL_BUFFER_DESTROYED only applies to that rectangle. This extension as well as EGL_BUFFER_PRESERVED allow major optimizations on surfaceflinger, which can redraw only the dirty area during compositing. However, ANDROID_swap_rectangle allows further optimizations in EGL by reducing the amount of copy-back needed. ANDROID_swap_rectangle is particularily important for software implementations.
* | move android_native_buffer_t declaration into its own ↵Mathias Agopian2009-05-053-3/+3
| | | | | | | | private/ui/android_native_priv.h header, since user code should never have access to it.
* | move opengl/include/EGL/android_natives.h to ↵Mathias Agopian2009-05-054-3/+6
| | | | | | | | | | | | include/ui/egl/android_natives.h and don't include it from egl.h the android_native_ types are just forward declared in egl.h
* | get rid of android_native_buffer_t::getHandle() and replace it with an ↵Mathias Agopian2009-05-052-29/+11
| | | | | | | | | | | | handle field this abstraction was not necessary. things are easier now.
* | removed the "bits" attribute from android_native_buffer_t.Mathias Agopian2009-05-052-32/+56
| | | | | | | | "bits" can never be trusted now that we need to call lock() on the handle to get the virtual address of the buffer.
* | update surfaceflinger, libui and libagl to the new gralloc apiMathias Agopian2009-05-046-93/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Currently the lock/unlock path is naive and is done for each drawing operation (glDrawElements and glDrawArrays). this should be improved eventually. - factor all the lock/unlock code in SurfaceBuffer. - fixed "showupdate" so it works even when we don't have preserving eglSwapBuffers(). - improved the situation with the dirty-region and fixed a problem that caused GL apps to not update. - make use of LightRefBase() where needed, instead of duplicating its implementation - add LightRefBase::getStrongCount() - renamed EGLNativeWindowSurface.cpp to FramebufferNativeWindow.cpp - disabled copybits test, since it clashes with the new gralloc api - Camera/Video will be fixed later when we rework the overlay apis