summaryrefslogtreecommitdiffstats
path: root/gpu/GLES2
Commit message (Collapse)AuthorAgeFilesLines
* Rename async upload/readback queries to avoid mix-upssievers@chromium.org2013-08-271-4/+4
| | | | | | | | BUG=273824 Review URL: https://chromiumcodereview.appspot.com/23060027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219698 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Revert 210138 "Perform glReadPixels with PBOs in the gpu, if PBO...""hubbe@chromium.org2013-07-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | Third try for getting asynchrous readpixels to work everywhere. This is identical to: https://codereview.chromium.org/16831004/, but with the following fixes: OutOfProcessPPAPITests.Graphics3D (removed a check in query_tracker.cc) GLReadbackTest.ReadPixelsWithPBO (removed, no longer a valid test) GLReadbackTest.ReadPixelsWithPBOAndQuery (now uses the correct query) And, new in this CL: Disable asynchronous readpixels on macosx prior to 10.8, as it would seem that the GL_ARB_fence extension doesn't seem to work on any driver, and there are crashes in readpixel itself on intel drivers. The original CL only disabled the async readpixels path for intel drivers. BUG=258169 Review URL: https://chromiumcodereview.appspot.com/19579008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213261 0039d316-1c4b-4281-b951-d872f2087c98
* Add GL_EXT_multisampled_render_to_texture support to command buffer.bsalomon@google.com2013-07-121-0/+2
| | | | | | | | | BUG=257113 R=apatrick@chromium.org, piman@chromium.org Review URL: https://codereview.chromium.org/18492005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211393 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 210138 "Perform glReadPixels with PBOs in the gpu, if PBO..."nick@chromium.org2013-07-121-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | > Perform glReadPixels with PBOs in the gpu, if PBOs are available. > Make GL_ASYNC_READ_PIXELS_COMPLETED_CHROMIUM wait for readpixel transfers. > PLEASE NOTE: glMapBuffer does not wait for the readpixels transfer to complete anymore. > Nobody is currently relying on that behaviour. > Update gl_helper.cc and gl_renderer.cc to use queries. > > This CL is the same as https://codereview.chromium.org/16831004/ > but includes fixes for: > OutOfProcessPPAPITests.Graphics3D (removed a check in query_tracker.cc) > GLReadbackTest.ReadPixelsWithPBO (removed, no longer a valid test) > GLReadbackTest.ReadPixelsWithPBOAndQuery (now uses the correct query) > > BUG=249925 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=209873 > > Review URL: https://chromiumcodereview.appspot.com/18555006 TBR=hubbe@chromium.org BUG=258169 Review URL: https://codereview.chromium.org/19029003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211274 0039d316-1c4b-4281-b951-d872f2087c98
* Perform glReadPixels with PBOs in the gpu, if PBOs are available.hubbe@chromium.org2013-07-041-0/+3
| | | | | | | | | | | | | | | | | | | | | Make GL_ASYNC_READ_PIXELS_COMPLETED_CHROMIUM wait for readpixel transfers. PLEASE NOTE: glMapBuffer does not wait for the readpixels transfer to complete anymore. Nobody is currently relying on that behaviour. Update gl_helper.cc and gl_renderer.cc to use queries. This CL is the same as https://codereview.chromium.org/16831004/ but includes fixes for: OutOfProcessPPAPITests.Graphics3D (removed a check in query_tracker.cc) GLReadbackTest.ReadPixelsWithPBO (removed, no longer a valid test) GLReadbackTest.ReadPixelsWithPBOAndQuery (now uses the correct query) BUG=249925 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=209873 Review URL: https://chromiumcodereview.appspot.com/18555006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210138 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 209873 "Perform glReadPixels with PBOs in the gpu, if PBO..."dslomov@chromium.org2013-07-031-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL caused similar failures. Note that not only XP is affected, it is all Windows bots: Win7: http://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%28dbg%29%283%29/builds/20016 Win Aura: http://build.chromium.org/p/chromium.win/builders/Win%20Aura%20Tests%20%283%29/builds/3891 WinXP: http://build.chromium.org/p/chromium.win/builders/XP%20Tests%20%28dbg%29%283%29/builds/37216 > Perform glReadPixels with PBOs in the gpu, if PBOs are available. > Make GL_ASYNC_READ_PIXELS_COMPLETED_CHROMIUM wait for readpixel transfers. > PLEASE NOTE: glMapBuffer does not wait for the readpixels transfer to complete anymore. > Nobody is currently relying on that behaviour. > Update gl_helper.cc and gl_renderer.cc to use queries. > > This CL is the same as https://codereview.chromium.org/16831004/, which was submitted and reverted because it seemed to cause > OutOfProcessPPAPITest.Graphics3D failures on XP. > > Since I don't have an XP box and there are no XP trybots I can't seem to reproduce the problem. Also, this particular test is flaky and has had problems even after my CL was reverted. Thus, I'm going to try to submit it again, and if that breaks OutOfProcessPPAPITest.Graphics3D again, I apologize in advance. > > > > BUG=249925 > > Review URL: https://chromiumcodereview.appspot.com/18555006 TBR=hubbe@chromium.org Review URL: https://codereview.chromium.org/18608004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209907 0039d316-1c4b-4281-b951-d872f2087c98
* Perform glReadPixels with PBOs in the gpu, if PBOs are available.hubbe@chromium.org2013-07-031-0/+3
| | | | | | | | | | | | | | | | | | | | Make GL_ASYNC_READ_PIXELS_COMPLETED_CHROMIUM wait for readpixel transfers. PLEASE NOTE: glMapBuffer does not wait for the readpixels transfer to complete anymore. Nobody is currently relying on that behaviour. Update gl_helper.cc and gl_renderer.cc to use queries. This CL is the same as https://codereview.chromium.org/16831004/, which was submitted and reverted because it seemed to cause OutOfProcessPPAPITest.Graphics3D failures on XP. Since I don't have an XP box and there are no XP trybots I can't seem to reproduce the problem. Also, this particular test is flaky and has had problems even after my CL was reverted. Thus, I'm going to try to submit it again, and if that breaks OutOfProcessPPAPITest.Graphics3D again, I apologize in advance. BUG=249925 Review URL: https://chromiumcodereview.appspot.com/18555006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209873 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 209625 "Perform glReadPixels with PBOs in the gpu, if PBO..."dslomov@chromium.org2013-07-021-3/+0
| | | | | | | | | | | | | | | | | | | | | | Looks like it causes OutOfProcessPPAPITest.Graphics3D failure on XP. http://build.chromium.org/p/chromium.win/builders/XP%20Tests%20%28dbg%29%282%29/builds/31095 > Perform glReadPixels with PBOs in the gpu, if PBOs are available. > Make GL_ASYNC_PIXEL_TRANSFERS_COMPLETED_CHROMIUM wait for readpixel transfers. > Add signalQuery to get a callback when the transfer is done. > PLEASE NOTE: glMapBuffer does not wait for the readpixels transfer to complete anymore. > Nobody is currently relying on that behaviour. > Update gl_helper.cc and gl_renderer.cc to use queries. > > BUG=249925 > > Review URL: https://chromiumcodereview.appspot.com/16831004 TBR=hubbe@chromium.org Review URL: https://codereview.chromium.org/18445004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209654 0039d316-1c4b-4281-b951-d872f2087c98
* Perform glReadPixels with PBOs in the gpu, if PBOs are available.hubbe@chromium.org2013-07-021-0/+3
| | | | | | | | | | | | | | Make GL_ASYNC_PIXEL_TRANSFERS_COMPLETED_CHROMIUM wait for readpixel transfers. Add signalQuery to get a callback when the transfer is done. PLEASE NOTE: glMapBuffer does not wait for the readpixels transfer to complete anymore. Nobody is currently relying on that behaviour. Update gl_helper.cc and gl_renderer.cc to use queries. BUG=249925 Review URL: https://chromiumcodereview.appspot.com/16831004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209625 0039d316-1c4b-4281-b951-d872f2087c98
* The semantics of shallow finish are to block until the GPU process has ↵apatrick@chromium.org2013-06-221-1/+2
| | | | | | | | issued all prior GL commands, without necessarily waiting for the GPU to complete them. It might have better performance than a regular finish in some cases. It is also less likely to hang if the GPU hangs on some platforms, such as Windows. Review URL: https://chromiumcodereview.appspot.com/17504006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207985 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Change Produce/ConsumeTexture to allow texture sharingpiman@chromium.org2013-05-291-34/+35
| | | | | | | | | | This changes the semantics of ProduceTexture to not replacing the current texture by a dud, but instead keeping the existing one, that it also puts into the mailbox. It changes the semantics of ConsumeTexture to deleting the current texture, and replacing it by the mailbox contents (without taking it out of the mailbox). The texture becomes shared. The mailbox is now effectively a weak pointer onto the texture. BUG=230137 Review URL: https://chromiumcodereview.appspot.com/14188053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202992 0039d316-1c4b-4281-b951-d872f2087c98
* Part 2/3 (GL) of adding with device scale factor to transport surfacesccameron@chromium.org2013-05-261-1/+2
| | | | | | | | | | | | | | Add a scale factor argument to glResizeCHROMIUM. Pass the scale factor on to the resize callback in ImageTransportSurface, and drop it on the floor there. BUG=132714 NOTRY=true Review URL: https://chromiumcodereview.appspot.com/15685003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202325 0039d316-1c4b-4281-b951-d872f2087c98
* GPU client side changes for GpuMemoryBuffers:kaanb@chromium.org2013-05-163-0/+146
| | | | | | | | | | | - Introduces a new GL extension CHROMIUM_map_image that contains Create/Destroy/Map/Unmap/GetImageParameteriv methods. - A new data structure called GpuMemoryBufferTracker to track these buffers and images on the client side. BUG=175012 Review URL: https://chromiumcodereview.appspot.com/14456004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200505 0039d316-1c4b-4281-b951-d872f2087c98
* Add a new parameter dest_type to the GL_CHROMIUM_copy_texture extension.jun.a.jiang@intel.com2013-04-192-5/+9
| | | | | | | | | | | It is used to define the destination texture if needed, which is possible for texImage2D(..., canvas) and texImage2D(..., video) in WebGL. BUG= Review URL: https://chromiumcodereview.appspot.com/13613006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195269 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for GL_TEXTURE_EXTERNAL_OES texture copy.hkuang@chromium.org2013-04-031-4/+8
| | | | | | | | | | | | | Add support for GL_TEXTURE_EXTERNAL_OES texture copy in function CopyTextureCHROMIUM which is needed for 2D Canvas Painting. In Issue 11973010, this support was already added inside the copyTextureCHROMIUMResourceManager, but it is still missing in the function CopyTextureCHROMIUM. So just add it. Also fix the RestoreTextureState, which was binding the OES texture to GL_TEXTURE_2D which will generate glError. BUG=225079 TEST= Review URL: https://chromiumcodereview.appspot.com/13168004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191968 0039d316-1c4b-4281-b951-d872f2087c98
* Implement client side PBOs for glReadPixelhubbe@chromium.org2013-04-021-1/+8
| | | | | | | | | | | | | | Use PBOs in gl_helper swizzle bytes on gpu flip vertically on gpu remove gl_helper_thread Implements GLHelper::CropScaleReadbackAndCleanTexture() to be non-blocking in the client by using shared memory combined with a query (not requiring actual GL PBO support, which would not be available on Android). Review URL: https://chromiumcodereview.appspot.com/12892005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191737 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Use correct enum values for CHROMIUM_pixel_transfer_buffer_object.reveman@chromium.org2013-03-191-4/+2
| | | | | | | | | | | BUG=None R=gman@chromium.org NOTRY=true Review URL: https://chromiumcodereview.appspot.com/12643012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188939 0039d316-1c4b-4281-b951-d872f2087c98
* Implement EXT_draw_buffers WebGL extention support in command buffer.zmo@chromium.org2013-03-142-0/+120
| | | | | | | | | | | | | A few things: 1) I only hooked up with desktop GL backend, i.e., GL_ARB_draw_buffers. Will add GLES support later. 2) Probably we need to do something to enable this for Pepper3D also? If yes, will do so in a seperate CL. 3) I didn't add the wordarounds for Mac/Linux driver bugs. Will do so in a seperate CL. BUG=180397 TEST=gpu_unittests, webgl conformance tests Review URL: https://codereview.chromium.org/12545014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188129 0039d316-1c4b-4281-b951-d872f2087c98
* Move InsertSyncPoint to GLES2Interfacepiman@chromium.org2013-03-081-0/+1
| | | | | | | | | | | | This is needed to allow Pepper to use mailboxes rather than parenting to integrate with the compositor. BUG=164095 Review URL: https://chromiumcodereview.appspot.com/12581004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186869 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: Add the ability to wait on upload completion.epenner@chromium.org2013-03-051-0/+2
| | | | | | | | | | | | | | | | | Patch originally by Eric Penner <epenner@chromium.org>. We currently have high latency if need to wait for uploads in the renderer client. If we can do a shallow client side wait it will be much better. This is effectively the same as doing synchronous uploads, but exposes less driver bug surface area then mixing uploads across threads. BUG=161828, 178634 Review URL: https://chromiumcodereview.appspot.com/12210129 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186190 0039d316-1c4b-4281-b951-d872f2087c98
* Make WaitSyncPoint go through command buffers.piman@chromium.org2013-02-273-0/+85
| | | | | | | | | BUG=178305 Review URL: https://chromiumcodereview.appspot.com/12330129 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184820 0039d316-1c4b-4281-b951-d872f2087c98
* Add MapBuffer prototypes to gl2extchromium.hgman@chromium.org2013-01-251-0/+8
| | | | | | | | | BUG=none Review URL: https://chromiumcodereview.appspot.com/12041066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178897 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up the mess left supporting 'use system libs'gman@chromium.org2013-01-251-23/+0
| | | | | | | | | | | | | | | The GL and EGL folders have nothing to do with src/gpu and so don't belong there. The gpu/GLES2 is the public (renderer) api. gl2chromium_constants.h does not belong there as that is only used by the GPU process. BUG=none Review URL: https://chromiumcodereview.appspot.com/12067002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178735 0039d316-1c4b-4281-b951-d872f2087c98
* Move code around to fix build with system mesa.phajdan.jr@chromium.org2013-01-161-0/+23
| | | | | | | | BUG=161389 Review URL: https://codereview.chromium.org/11973003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177172 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor so chromium only GL extensions require gl2extchromium.hgman@chromium.org2013-01-091-1/+2
| | | | | | | | | | | | This is a step toward making third_party/khronos/gl2.h and gl2ext.h have as few modifications as possible. BUG=none Review URL: https://chromiumcodereview.appspot.com/11782020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175858 0039d316-1c4b-4281-b951-d872f2087c98
* Aura: A little lighter GL synchronizationbacker@chromium.org2013-01-091-5/+4
| | | | | | | | | | | On the consumeTextureCHROMIUM(), we only need to synchronize on the channel. This can be accomplished with a shallowFlushCHROMIUM() rather than a flush(), the latter which implies a service side glFlush(). BUG=none TEST=by hand Review URL: https://chromiumcodereview.appspot.com/11779023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175796 0039d316-1c4b-4281-b951-d872f2087c98
* Remove inappropriate code generation.gman@chromium.org2013-01-033-292/+279
| | | | | | | | | | | | | | Code generation should not be used for for simple things like repeating a few strings. It makes code harder to edit and understand. BUG=none R=apatrick@chromium.org Review URL: https://chromiumcodereview.appspot.com/11747003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174895 0039d316-1c4b-4281-b951-d872f2087c98
* Extract Chromium-specific parts out of third_party/khronos/GLES2 .phajdan.jr@chromium.org2012-12-272-2/+475
| | | | | | | | BUG=161389 Review URL: https://codereview.chromium.org/11679005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174699 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 174687kmadhusu@chromium.org2012-12-272-484/+2
| | | | | | | | | | | | | > Extract Chromium-specific parts out of third_party/khronos/GLES2 . > > BUG=161389 > > Review URL: https://codereview.chromium.org/11679005 TBR=phajdan.jr@chromium.org Review URL: https://codereview.chromium.org/11676011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174695 0039d316-1c4b-4281-b951-d872f2087c98
* Extract Chromium-specific parts out of third_party/khronos/GLES2 .phajdan.jr@chromium.org2012-12-272-2/+484
| | | | | | | | BUG=161389 Review URL: https://codereview.chromium.org/11679005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174687 0039d316-1c4b-4281-b951-d872f2087c98
* Add a command to lose the contextgman@chromium.org2012-12-172-0/+56
| | | | | | | | | BUG=166020 Review URL: https://chromiumcodereview.appspot.com/11568029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173441 0039d316-1c4b-4281-b951-d872f2087c98
* Move gl2chromium.h out of third_party, it really is our file.phajdan.jr@chromium.org2012-12-141-0/+232
| | | | | | | | | | This will be helpful for using system mesa. BUG=161389 Review URL: https://codereview.chromium.org/11466011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173017 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: also move tex parameters into mailboxpiman@chromium.org2012-12-011-12/+11
| | | | | | | | | | | | Because the texture completeness depends on the filtering and wrapping modes, it's awkward to move image data into the mailbox but not parameters. BUG=None Review URL: https://chromiumcodereview.appspot.com/11414091 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170609 0039d316-1c4b-4281-b951-d872f2087c98
* Allow immutable textures into mailboxespiman@chromium.org2012-09-251-2/+4
| | | | | | | | | BUG=None Review URL: https://chromiumcodereview.appspot.com/10984009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158496 0039d316-1c4b-4281-b951-d872f2087c98
* Add glBindUniformLocationCHROMIUMgman@chromium.org2012-06-262-88/+131
| | | | | | | | | TEST=unit tests BUG=132844 Review URL: https://chromiumcodereview.appspot.com/10635011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144070 0039d316-1c4b-4281-b951-d872f2087c98
* Make GL_CHROMIUM_consistent_uniform_locations slighty more robustgman@chromium.org2012-06-201-7/+9
| | | | | | | | | | | | | | Added a program argument so that at least in debug we can verify locations are correct. It also means we could fallback to actually calling GetUniformLocation if need be. TEST=unit tests BUG=132844 Review URL: https://chromiumcodereview.appspot.com/10581029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@143126 0039d316-1c4b-4281-b951-d872f2087c98
* Addition of an unpremultiplied-alpha setting for the ↵twiz@chromium.org2012-06-191-1/+6
| | | | | | | | | | | | | | | | GL_CHROMIUM_copy_texture command buffer GL extension. The extension needs to support the ability to unpremultiply the source of the copy because of the canvas2d-webgl texture use case. Canvas is stored in premultiplied form, yet WebGL expects texture contents to be in unpremultiplied form. Change also includes conversion of argument types to overriders of WebGraphicsContext3D::copyTextureCHROMIUM(...). This change is necessary as a result of a wk-change: https://bugs.webkit.org/show_bug.cgi?id=86275 BUG=101051 TEST=none Review URL: https://chromiumcodereview.appspot.com/10535174 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142962 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for GL_CHROMIUM_consistent_uniform_locationsgman@chromium.org2012-06-191-0/+86
| | | | | | | | | BUG=132844 TEST=unit tests Review URL: https://chromiumcodereview.appspot.com/10568003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142879 0039d316-1c4b-4281-b951-d872f2087c98
* Plum through ANGLE_depth_texturegman@chromium.org2012-06-081-0/+38
| | | | | | | | | TEST=unit tests BUG=none Review URL: https://chromiumcodereview.appspot.com/10441087 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141117 0039d316-1c4b-4281-b951-d872f2087c98
* Addition of a set of basic unit tests for the GL_CHROMIUM_copy_texture ↵twiz@chromium.org2012-05-041-1/+8
| | | | | | | | | | | | | | | extension. This change also introduces a new parameter to the extension, internal_format. This is to bring the extension closer in functionality to glCopyTexImage. The tests uncovered state that was not being properly restored: GL_BLEND. This is also corrected. TEST=GLCopyTextureCHROMIUMTest.* BUG=126178 Review URL: http://codereview.chromium.org/10356004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135434 0039d316-1c4b-4281-b951-d872f2087c98
* Added documentation for GL_CHROMIUM_texture_mailbox GL extension.apatrick@chromium.org2012-05-021-0/+119
| | | | | | Review URL: http://codereview.chromium.org/10222015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134847 0039d316-1c4b-4281-b951-d872f2087c98
* Re-submission of http://codereview.chromium.org/9968113twiz@chromium.org2012-04-201-0/+66
| | | | | | | | | | | | | | | | | | | | | | | | | This version corrects the problem that caussed the revert of the above issue. The shaders used by the extension were specifying a precision, which is not supported on desktop GL. The shaders now conditionally specify the precision. ------------------------------------------------------ Introduction of CHROMIUM_copy_texture extension that respects pixel-store semantics, and allows copying of BGRA textures. OpenGL ES does not natively allow for copying textures with a BGRA format. The EXT_texture_format_BGRA8888 extension does not specify support for glCopyTexImage calls on these textures. This extension provides a routine to perform texture copies to/from BGRA-backed textures that also respects the following CHROMIUM pixel storage modifiers: UNPACK_FLIP_Y_CHROMIUM UNPACK_PREMULTIPLY_ALPHA_CHROMIUM This extension will be useful for the following purposes: - Copying accelerated Canvas2D contents to WebGL textures without a software readback. (And potentially the same for video-webgl texture copies.) - Copying Canvas2D contents to the compositor backing store. BUG=101051 TEST=none Review URL: http://codereview.chromium.org/10124016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133213 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 132934 - this change seems to break many webgl related layout teststoyoshim@chromium.org2012-04-191-66/+0
| | | | | | | | | | | | | | | | | | | | | | | | Introduction of CHROMIUM_copy_texture extension that respects pixel-store semantics, and allows copying of BGRA textures. OpenGL ES does not natively allow for copying textures with a BGRA format. The EXT_texture_format_BGRA8888 extension does not specify support for glCopyTexImage calls on these textures. This extension provides a routine to perform texture copies to/from BGRA-backed textures that also respects the following CHROMIUM pixel storage modifiers: UNPACK_FLIP_Y_CHROMIUM UNPACK_PREMULTIPLY_ALPHA_CHROMIUM This extension will be useful for the following purposes: - Copying accelerated Canvas2D contents to WebGL textures without a software readback. (And potentially the same for video-webgl texture copies.) - Copying Canvas2D contents to the compositor backing store. BUG=101051 TEST=none Review URL: http://codereview.chromium.org/9968113 TBR=twiz@chromium.org Review URL: https://chromiumcodereview.appspot.com/10078006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132958 0039d316-1c4b-4281-b951-d872f2087c98
* Introduction of CHROMIUM_copy_texture extension that respects pixel-store ↵twiz@chromium.org2012-04-191-0/+66
| | | | | | | | | | | | | | | | | | | | | semantics, and allows copying of BGRA textures. OpenGL ES does not natively allow for copying textures with a BGRA format. The EXT_texture_format_BGRA8888 extension does not specify support for glCopyTexImage calls on these textures. This extension provides a routine to perform texture copies to/from BGRA-backed textures that also respects the following CHROMIUM pixel storage modifiers: UNPACK_FLIP_Y_CHROMIUM UNPACK_PREMULTIPLY_ALPHA_CHROMIUM This extension will be useful for the following purposes: - Copying accelerated Canvas2D contents to WebGL textures without a software readback. (And potentially the same for video-webgl texture copies.) - Copying Canvas2D contents to the compositor backing store. BUG=101051 TEST=none Review URL: http://codereview.chromium.org/9968113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132934 0039d316-1c4b-4281-b951-d872f2087c98
* Add GL_EXT_unpack_subimage support to command buffer client code.bsalomon@google.com2012-04-101-1/+74
| | | | | | | BUG=121780 Review URL: https://chromiumcodereview.appspot.com/10012057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131579 0039d316-1c4b-4281-b951-d872f2087c98
* Move GL headers from gpu to third_party/khronosskyostil@google.com2011-11-243-2265/+0
| | | | | | | | | | | | | This change moves the OpenGL ES and EGL header files from gpu/ to a new third_party/khronos/ directory. The headers are also rebased to the latest upstream versions. BUG=102824 TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=111170 Review URL: http://codereview.chromium.org/8423038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111523 0039d316-1c4b-4281-b951-d872f2087c98
* Added minimal support to command buffer for GL_ARB_texture_rectanglekbr@chromium.org2011-11-231-0/+35
| | | | | | | | | | | | | | | | | | | | | | textures, and added Mac OS X-specific extension for binding IOSurfaces to textures. This is infrastructure work for rendering Core Animation plugins via Chrome's compositor. Refactored the texture initialization in the command buffer and associated unit tests. Added unit tests for rectangular textures. These changes will be hooked up in a subsequent CL. They were split off for easier review. There are ongoing discussions about unifying the various mechanisms for sharing textures across processes, but it's been agreed that those should not block this work. BUG=38967 TEST=GPU unit tests; manual testing with forthcoming changes Review URL: http://codereview.chromium.org/8680002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111426 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 111170 - Move GL headers from gpu to third_party/khronosabodenha@chromium.org2011-11-223-0/+2230
| | | | | | | | | | | | | | This change moves the OpenGL ES and EGL header files from gpu/ to a new third_party/khronos/ directory. The headers are also rebased to the latest upstream versions. BUG=102824 TEST=none Review URL: http://codereview.chromium.org/8423038 TBR=skyostil@google.com Review URL: http://codereview.chromium.org/8633020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111173 0039d316-1c4b-4281-b951-d872f2087c98
* Move GL headers from gpu to third_party/khronosskyostil@google.com2011-11-223-2230/+0
| | | | | | | | | | | This change moves the OpenGL ES and EGL header files from gpu/ to a new third_party/khronos/ directory. The headers are also rebased to the latest upstream versions. BUG=102824 TEST=none Review URL: http://codereview.chromium.org/8423038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111170 0039d316-1c4b-4281-b951-d872f2087c98
* Add a comment for the new CHROMIUM extension.backer@chromium.org2011-11-141-0/+4
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/8536025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109896 0039d316-1c4b-4281-b951-d872f2087c98