summaryrefslogtreecommitdiffstats
path: root/opengl/java
Commit message (Collapse)AuthorAgeFilesLines
* GLSurfaceView: Be less picky about EGLConfig alpha sizesAndy Ross2016-06-221-1/+1
| | | | | | | | | | | | | | | | | | | EGLChooseConfig returns a "best match" set of visuals meeting or exceeding the required r/g/b/a component depths. But GLSurfaceView oddly requires that the returned visual be an exact match. Add to that that the (rarely used outside of CTS) default request specifies zero alpha bits and that not all drivers expose a zero-alpha EGLConfig, and the default configuration will fail needlessly. It's not incorrect to have alpha bits you didn't request: the only way to produce divergent behavior is for a fragment shader to write out explicit alpha values (into the channel it didn't want to begin with!) with values other than 1.0 and then rely on them being ignored and treated as 1.0. For: AXIA-1448 Change-Id: I2f64995d7b9de1ae082aa47822af525390102083 Signed-off-by: Andy Ross <andy.ross@windriver.com>
* Add tracing to GLSurfaceViewChris Craik2015-06-081-3/+19
| | | | | | bug:21195272 Change-Id: I96bce6d6021fc720c73993202ba90997b0fc0e09
* Cleanup Bitmap JNI attempt #2John Reck2015-03-051-10/+0
| | | | | | | | Original version missed a spot This reverts commit c02977e3bbfaaedcb1b1d67e1692becc7dddd59b. Change-Id: I56244ce10d709fcdef42a001fe4c6ba7b6bbb04d
* Revert "Cleanup Bitmap JNI"Chad Jones2015-03-051-0/+10
| | | | | | This reverts commit b2915245b74b3b5541b123e38403f8e26426b4b7. Change-Id: Idd7d7f33eec4ea5024c83de6b10d3d1a6ab2b17a
* Cleanup Bitmap JNIJohn Reck2015-03-051-10/+0
| | | | | | | | Fix a bunch of places where mNativeBitmap was being poked at directly, switch them either to the NDK API or to GraphicsJNI where it made sense Change-Id: I6b3df3712d6497cba828c2d3012e725cb4ebb64d
* Re-allow suppressing onDetachedFromWindowJohn Reck2014-10-011-3/+2
| | | | | | | | | | | | Bug: 17578553 Games seem to be doing this to prevent destruction of their GL contexts, and they assume it works even if it doesn't. However, GLSurfaceView is clunky here, so while the app is doing something questionable we don't really offer a better way. For now revert back to kitkat behavior. Change-Id: Icfa9e496279b9cfa47f9bc7f6848d9313caed0d5
* Fix onTrimMemory for HardwareRendererJohn Reck2014-06-301-137/+0
| | | | | | | | | Also fixes detachFunctor possibly drawing after return Bug: 15189843 Bug: 15990672 Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
* opengl: Un-hide GLES31 and GLES31Ext classesJesse Hall2014-05-212-2/+0
| | | | | Bug: 15028495 Change-Id: Icda236ee12a06ef2eb9902253d272dee2b61f6ef
* opengl: Add GLES31 and GLES31Ext classesJesse Hall2014-05-212-0/+1779
| | | | | Bug: 15028495 Change-Id: Ie967c1938060edb42864dd48efa668ae7bf5cd76
* am 43cea7ea: am 650a8860: am fc3c6a0e: Merge "EGL_OPENGL_ES3_BIT_KHR is set ↵Jesse Hall2014-04-211-2/+6
|\ | | | | | | | | | | | | as ES 3 context is requested." * commit '43cea7eadbcb3930887eadfa3f278e1a666449d0': EGL_OPENGL_ES3_BIT_KHR is set as ES 3 context is requested.
| * EGL_OPENGL_ES3_BIT_KHR is set as ES 3 context is requested.Jin Zhebin2014-04-151-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | OpenGL ES have 3 configuration: 1(EGL10.EGL_RENDERABLE_TYPE), 2(EGL_OPENGL_ES2_BIT), 3(EGL_OPENGL_ES3_BIT_KHR). The driver should be get the according configuration parameter. Now 1 is set to driver when Configuration 3 is set from user. Specification EGL_OPENGL_ES3_BIT_KHR is set to driver when a OpenGL ES 3 context is requested in setEGLContextClientVersion(). Change-Id: I980d9d8dbe5754295f8329fcf9378962d669fa89 Signed-off-by: Jin Zhebin <zhebinx.jin@intel.com> Signed-off-by: bdeng3X <bingx.deng@intel.com>
* | Revert "Revert "Workaround apps not calling super.onDetachedFromWindow()""John Reck2014-03-061-7/+3
| | | | | | | | | | | | This reverts commit bac16fae7e6fceb1e516252ede673844b772e7c3. Change-Id: I61e997b23fac1aa984129fdc0328426ff8891bdd
* | Revert "Workaround apps not calling super.onDetachedFromWindow()"Bart Sears2014-03-061-2/+2
| | | | | | | | | | | | | | | | Requested by jreck to fix the build. This reverts commit 198d20842a537f3df3584ea084e74220e172b086. Change-Id: I733065cc124b59bf914034f5bac5e2e951a5b604
* | Workaround apps not calling super.onDetachedFromWindow()John Reck2014-03-061-2/+2
| | | | | | | | | | | | | | | | Bug: 13338698 Move the releasing of hardware resources to a new @hide onDetachedFromWindowInternal Change-Id: I52b4e6ba4d5b3ce20b89cabffa248d1d780e3e81
* | Fix bad link tag in javadoc.Narayan Kamath2014-02-281-1/+1
| | | | | | | | | | | | | | Java7 javadoc tools seem to accept this without complaint but not all targets use java7 yet. Change-Id: Ib025d12550f5fd68edce5760747f9225a2be50c6
* | API changes for 64 bit platforms.Narayan Kamath2014-02-271-15/+14
| | | | | | | | | | | | | | | | | | EGLObjectHandle.<init>(int) and int EGLObjectHandle.getHandle() have now been deprecated and replaced with variants that take and return java longs. bug: 13181704 Change-Id: I67bef5fbf064e85205b8a85e00f91f4ffcf60d19
* | am 7aec4109: am 7aeb4307: am 2525acf5: am e4dae5f2: Merge "AArch64: Make ↵Narayan Kamath2014-02-271-2/+1
|\ \ | |/ | | | | | | | | | | eglGetDisplay(int) work for EGL_DEFAULT_DISPLAY" * commit '7aec4109c53371e69bec111c69767810f45c301c': AArch64: Make eglGetDisplay(int) work for EGL_DEFAULT_DISPLAY
| * AArch64: Make eglGetDisplay(int) work for EGL_DEFAULT_DISPLAYAshok Bhat2014-02-261-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | Note that files changed in this patch have been automatically generated by running frameworks/native/opengl/tools/glgen/gen script This will allow eglGetDisplay(int) to work on both 32-bit and 64-bit systems when EGL_DEFAULT_DISPLAY is passed as a parameter. Change-Id: Idf27d6e00d623d331bb2d4d7f85fa450e0db26c9 Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
* | Merge "Tabs -> spaces in frameworks/base."John Spurlock2014-02-256-11/+11
|\ \
| * | Tabs -> spaces in frameworks/base.John Spurlock2014-02-256-11/+11
| | | | | | | | | | | | Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
* | | am d8410d38: am 614b00de: am a88abfb3: am 6ab07fac: Merge "Use long for ↵Narayan Kamath2014-02-256-13/+57
|\ \ \ | |/ / |/| / | |/ | | | | | | pointers in opengl/EGL classes" * commit 'd8410d38cf2eb133dab29aec722dce862584d115': Use long for pointers in opengl/EGL classes
| * Use long for pointers in opengl/EGL classesAshok Bhat2014-02-246-13/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note that files changed in this patch have been automatically generated by running frameworks/native/opengl/tools/glgen/gen script This patch updates EGL classes in frameworks/base to support 64-bit platforms. Key changes in the EGL classes include [x] EGLObjectHandle class - EGLObjectHandle class has two public methods (constructor and getHandle) that assume handles are 32-bit. They have not been changed. Instead, two new hidden methods (EGLObjectHandle(long) and getNativeHandle) have been added. [x] EG14 class - Two public methods eglGetDisplay and eglCreatePbufferFromClientBuffer assume that handles are 32-bit. They have been changed to throw unsupported operation exception on non 32-bit machines. Two new methods eglGetDisplay(long) and eglCreatePbufferFromClientBuffer(...long buffer..) have been added to support 64-bit handles. Change-Id: I9e0f064e5b33700eb0baa2e1841a21f931f7a765 Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
* | Hide three malformed GL bindingsAndy McFadden2014-02-191-0/+3
|/ | | | | | | | | They were replaced with correct bindings a while back, but the broken methods weren't hidden. Bug 6006380 Change-Id: I3432d37a6bf411bbd2b3ea363749e32fcff28672
* Use long to store pointers in GLES_JNI/EGL classesAshok Bhat2014-01-315-30/+48
| | | | | | Change-Id: I43b32f2a85c07b3f59c57e28e3d03e8d1cabcd8b Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
* Merge "Fix incorrect name in eglSwapBuffers log wrapper"Jesse Hall2013-12-151-1/+1
|\
| * Fix incorrect name in eglSwapBuffers log wrapperBrian Harris2013-12-101-1/+1
| | | | | | | | | | | | | | Correctly identify eglSwapBuffers in EGLLogWrapper, which had been labeled as "eglInitialize". Change-Id: I67c61e100e2f84400ceebc28712f036e5a055017
* | Merge "Fix wrapper equals()"Andy McFadden2013-06-246-6/+4
|\ \
| * | Fix wrapper equals()Andy McFadden2013-06-216-6/+4
| |/ | | | | | | | | | | | | | | Make it faster and correcter. Bug 9204146 Change-Id: Ieeb97b72005e831ec6b94fc24ed2c3bc03307c2a
* | Minor fixes to android.opengl.MatrixAndy McFadden2013-06-211-40/+68
|/ | | | | | | | | | | | | | | | | | | | This has a minor API change: deprecation of the nullary constructor. The class is entirely composed of static methods, and was written without a constructor, but the compiler dutifully generated a default implementation and the API tool slurped it up. The other changes are to the documentation: - Added warnings about the use of overlapping input and output on certain methods. - Fixed a few inaccuracies (e.g. transposeM() returns a transposed matrix, not an inverted matrix). - Tidied up the formatting. - Generally placated the consistency hobgoblins. Bug 8868762 Change-Id: Ie3f86b98c477d8dc82d9dcaa311959bd4d191359
* Add android.opengl.EGLExt class for EGL extensionsJesse Hall2013-05-012-8/+46
| | | | | | | | | | | | | Add the ES-relevant constants from the EGL_KHR_create_context extension. These allow apps to check which EGLConfigs (if any) support ES3 contexts. Otherwise, the app has to create a context with an EGLConfig and then check whether it is an ES2 or ES3 context. Also move eglSetPresentationTimeANDROID from EGL14 to EGLExt, since it's an extension function. It's new in API 18. Bug: 8678160 Change-Id: I3cba6e59ebb0a3a4c4012aa54a36b940c288bcec
* Revert all recent GLSurfaceView changes.Jeff Brown2013-04-191-397/+662
| | | | | | | | | | | | | | | | | | | | | | Several issues have been identified that will need to be resolved carefully before we attempt to make similar changes. 1. Some applications make assumptions about the fact that all Runnables posted with queueEvent() will be executed before the next draw. Because the Choreographer may post messages in the past (due at the frame time), these Runnables were not always running at the expected time. 2. Some applications apparently hijack the GLThread and try to run their own Looper on it. This obviously won't work if we are already running one of our own. We may need to add new rendering modes or target API checks to provide an opportunity for applications to opt-in to the changes in the future. Bug: 8649804 Change-Id: I6289c3392a98cdbfaf28c7f4f7a8040f2138a3b4
* Fix change of behavior in Looper.quit().Jeff Brown2013-04-181-10/+6
| | | | | | | | | | | | | | | | | It seems some applications rely on Looper.quit() terminating the loop immediately without processing all messages. Rather than risk breaking them, make the safer behavior optional. Also take care to properly drain the message queue before quitting so that all of the Message instances are recycled. This may help release storage sooner in case the Looper doesn't get GC'd promptly and its remaining queue of undelivered messages sticks around. Improve docs on runWithScissors. Bug: 8596303 Change-Id: I8cbeb6f7a5f6b8e618b5109f87a03defc1486b9f
* don't trigger a render when setting the rendermodeMathias Agopian2013-04-181-8/+29
| | | | | | | | also don't cache the rendermode, to mimic the older behaviour. Bug: 8656076 Change-Id: Id9383852bed073927db2364f7ac30a1be28b4cd8
* Merge "Unhide android.opengl.GLES30 class and contents" into jb-mr2-devJesse Hall2013-04-162-1/+1
|\
| * Unhide android.opengl.GLES30 class and contentsJesse Hall2013-04-152-1/+1
| | | | | | | | | | Bug: 8566953 Change-Id: I5273fb3bff642da5ff1eecb5899e8051402b19ca
* | Merge "Add android.opengl.GLES30, hidden for now" into jb-mr2-devJesse Hall2013-04-162-3/+1801
|\ \ | |/
| * Add android.opengl.GLES30, hidden for nowJesse Hall2013-04-152-3/+1801
| | | | | | | | | | Bug: 8566953 Change-Id: Ia5a01d5e857b4fce12a451e2dcab0359758ad648
* | Don't draw synchronously in onResume()Mathias Agopian2013-04-101-1/+1
|/ | | | | | | | | | | | | this could cause a dead-lock if the applicaltion's draw implementation blocks until something happenson the main ui thread. note: we're still doing this synchronous draw in onWindowResize() because that's what the previous implementation did. Technically, it has the same problem. Bug: 8586305 Change-Id: I782568289cc9419346aeea73775d86faa28b3058
* rework GLSurfaceView so it can use the choreographerMathias Agopian2013-04-091-660/+378
| | | | | | | | | | | | | | | | | | GLSurfaceView will now automatically use the Choreographer to schedule render updates on VSYNC. This happens only in RENDERMODE_CONTINUOUSLY. GLSurfaceView was rewriten to use a Looper and a HandlerThread instead of a custom thread. The basic mode of operation is unchanged, however the implementation is largely different. Removed support for older GPUs which had a limited number of contexts. Bug: 8485730 Change-Id: I7b270f7ad7bb1259e858429054b1c8c9cc159dc6
* Fix createSurface / eglCreateWindowSurface race.Jack Palevich2013-03-181-2/+13
| | | | | | | | | | Previously we could have returned from createSurface on the main thread before calling eglCreateWindowSurface on the GLThread. That could lead to a problem because the surface could be destroyed before eglCreateWindowSurface got a chance to run. Bug: 8328715 Change-Id: I273149f7d4b165abbe218a91ff54083f3f498cb0
* Publish new MediaCodec APIAndy McFadden2013-03-071-1/+0
| | | | | | | | | | Un-hide two new methods in MediaCodec, one new constant, and a new EGL extension. Bug 7991062 Bug 8191230 Change-Id: I028669132d9ffda1e4b34a561bab3997bbd7dae5
* Add eglPresentationTimeANDROIDAndy McFadden2013-03-051-0/+9
| | | | | | | | Added EGL extension to set a timestamp on a surface. Bug 8191230 Change-Id: Ie73bd7d1217348c9c64b8c68da38d671d48355f7
* regenerate GLES java bindingsMathias Agopian2013-02-252-80/+0
| | | | | | | | | - added most missing validation checks - glGet* validation reimplement from khronos documentation Bug: 7402895 Change-Id: I92a805bb1aba1600d3372dc2db22eab08c975d7f
* regenerate egl/gles stubs from glgenMathias Agopian2013-02-221-2/+2
| | | | | | those are minor cosmetic changes. Change-Id: I84ee5383577f0ca33ed7cc32d03e53c1475f068d
* DdmServer: add controls for OpenGL tracingSiva Velusamy2012-12-191-5/+2
| | | | | | Add a new JDWP packet to allow control of OpenGL tracing. Change-Id: Ic89e2f6299238a612df2f914581049f2cbba088c
* GLSurfaceView defaults to 888 instead of 565Mathias Agopian2012-09-181-6/+6
| | | | Change-Id: Ie00fe578136365031e4bb878a04b68dc40e24b9e
* Rename UserId to UserHandle.Dianne Hackborn2012-08-161-2/+2
| | | | | | This is the start of turning this into a formal public API. Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
* Enable use of Surface as a native window in EGL14 wrapper.Jeff Brown2012-08-081-1/+3
| | | | Change-Id: Ia3546fd02f9b60d4505fbc0602522b95e3e5b6be
* Improve gradientsRomain Guy2012-07-311-2/+2
| | | | | | Avoid using textures for common gradients (two stops from 0.0 to 1.0) Change-Id: Iff55d21b126c8cfc4cfb701669f2339c8f6b131a
* Fix android.opengl.Matrix frustum's generationRomain Guy2012-07-301-4/+3
| | | | | | External bug report: http://code.google.com/p/android/issues/detail?id=35646 Change-Id: I845783c05da46855f0c1d824c9a367f0e4673b85