summaryrefslogtreecommitdiffstats
path: root/gpu/GLES2
Commit message (Collapse)AuthorAgeFilesLines
* Add way to create a texture in parent's context and copy into itjamesr@chromium.org2010-08-281-0/+14
| | | | | | | | | | | | | | | | | | | | | | For canvas we need a way to create multiple offscreen render targets within the same OpenGL context and expose them all to the compositor, which exists as a parent context. ggl currently provides a single framebuffer and texture pair per offscreen context and implements swapBuffers() to copy to the parent texture. This generalizes that to let clients create as many parent textures as necessary and do the equivalent of swapBuffers() for each without the service side needing to keep track of the mapping. We'll want to change this in the future when we start using glBlitFramebuffer to support multisampling. I think in that world we'll need a way to bind a texture in the parent's context to the DRAW_FRAMEBUFFER context. For now, I think this is OK. TEST=open a page with multiple accelerated canvases in a shared context BUG=52684 Review URL: http://codereview.chromium.org/3211005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57761 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for EXT_framebuffer_multisamplegman@chromium.org2010-08-231-3/+72
| | | | | | | | | | | | | | | I probably need more tests but in order to test I need to figure out how to init the system with different caps enabled from the unit tests and that's probably not a small amount of work so leaving that till later. TEST=some unit tests, ran conformance tests BUG=none Review URL: http://codereview.chromium.org/3122033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57081 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for gman@chromium.org2010-07-201-0/+3
| | | | | | | | | | | | | | GL_OES_texture_float, GL_OES_texture_float_linear, GL_OES_texture_half_float, GL_OES_texture_half_float_linear TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/3005017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53060 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for OpenGL ES 2.0 extensionsgman@chromium.org2010-07-161-0/+3
| | | | | | | | | | | | | | this one specifically adds support for GL_EXT_texture_compression_dxt1 and GL_OES_texture_npot and GL_EXT_texture_format_BGRA8888 TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/2827051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52598 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for gl2ext.hgman@chromium.org2010-07-161-4/+16
| | | | | | | | | TEST=hand tested with gles2_demo and simple_texture2d BUG=none Review URL: http://codereview.chromium.org/3039003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52579 0039d316-1c4b-4281-b951-d872f2087c98
* Expose MapBufferSubData and MatTexSubImage2Dgman@chromium.org2010-07-153-467/+474
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/2911010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52541 0039d316-1c4b-4281-b951-d872f2087c98
* Adds MapBufferSubData and MapTexSubImage2D.gman@chromium.org2010-07-141-0/+8
| | | | | | | | | | | | | | | | | This is only the internal command buffer implementation. Connecting these functions publicly to PPAPI or whatever will happen separate from this CL. It's not clear to me where to put GL_READ_ONLY and GL_WRITE_ONLY Probably the same place we expose these 2 functions to the public. TEST=unit test BUG=none Review URL: http://codereview.chromium.org/2956005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52263 0039d316-1c4b-4281-b951-d872f2087c98
* Makes shader translation a runtime switch.gman@chromium.org2010-05-171-1/+5
| | | | | | | | | | | | | | For WebGL the shader translation is off. For Pepper and other processes it is on. This will be removed and the tranlator will always be on at some point in the future TEST=More conformance tests pass, manually ran WebGL demos in Chrome. BUG=none Review URL: http://codereview.chromium.org/2127001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47441 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for compressed textures. DXT1 only.gman@chromium.org2010-05-171-1/+32
| | | | | | | | | | | | | | | | | | | This is a temporary implementation. The real implementation will require *) glGetString to return "GL_EXT_texture_compression_dxt1" *) CommandBufferEnable("GL_EXT_texture_compression_dxt1") to dynamically modify the validation after it has made sure the "GL_EXT_texture_compression_dxt1" is returned from the system level GL TEST=none BUG=none Review URL: http://codereview.chromium.org/2136003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47417 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit CL http://codereview.chromium.org/1992008/gman@google.com2010-05-081-0/+18
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/2013010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46793 0039d316-1c4b-4281-b951-d872f2087c98
* Revert gpu CL which broke the Mac build.shess@chromium.org2010-05-081-18/+0
| | | | | | | | | | | | | | | | | | | | Reverting change by gman@chromium.org, Fri 07 May 2010 16:35:41, r46756, original comment: This CL adds the option to support buffers that are bound to more than one target. <snip> original review URL: http://codereview.chromium.org/1992008 TBR=gman@chromium.org BUG=none TEST=Mac waterfall green Review URL: http://codereview.chromium.org/1988007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46762 0039d316-1c4b-4281-b951-d872f2087c98
* This CL adds the option to support buffers that are boundgman@chromium.org2010-05-071-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to more than one target. We had originally decided that this would be an disallowed. glBindBuffer(GL_ARRAY_BUFFER, some_buffer_id); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, some_buffer_id); Unfortunately the GLES2 conformance tests require this behavior. This CL makes this behavior possible but it has to be turned on because it means all buffers have to have CPU side backing (not just ELEMENT_ARRAY_BUFFERs) and it means a slowdown for dynamic vertex related stuff like skinning because an extra copy has to be made every time they are updated. So, by default it will be off but we'll come up with some way to turn it on. Al's suggestion is to use eglCreateContext with a custom intialization attribute. My #1 question: What about the name of the command, the name of the constant and the filename the constant is in. Any thoughts? TEST=none BUG=none Review URL: http://codereview.chromium.org/1992008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46756 0039d316-1c4b-4281-b951-d872f2087c98
* Added gl2ext.h for conformance tests to compile.alokp@chromium.org2010-04-131-0/+773
| | | | | | Review URL: http://codereview.chromium.org/1591030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44363 0039d316-1c4b-4281-b951-d872f2087c98
* Rearrange GLES2 files so they are easier to usegman@chromium.org2010-03-083-0/+834
from native client and pepper. TEST=none BUG=none Review URL: http://codereview.chromium.org/668205 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40956 0039d316-1c4b-4281-b951-d872f2087c98