summaryrefslogtreecommitdiffstats
path: root/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Resubmit http://codereview.chromium.org/2096008/showgman@chromium.org2010-05-1913-85/+224
| | | | | | | | | | now that ANGLE has been updated or gcc 4.4.1 TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47721 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting again, will manually build on linux since trybots are apparently ↵gman@chromium.org2010-05-1813-224/+85
| | | | | | not up to the task >:-( git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47589 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit with fix that trybot didn't catch.gman@chromium.org2010-05-1813-85/+224
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47588 0039d316-1c4b-4281-b951-d872f2087c98
* revert last CLgman@chromium.org2010-05-1813-223/+84
| | | | | | | TBR=gman@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47579 0039d316-1c4b-4281-b951-d872f2087c98
* Update the GLSL translator code to use the correct constantsgman@chromium.org2010-05-1813-84/+223
| | | | | | | | | | | | | | and save the error log so it can be passed back through GL calls. This also links with the GLSL translator always TEST=conformance tests BUG=none Review URL: http://codereview.chromium.org/2096008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47578 0039d316-1c4b-4281-b951-d872f2087c98
* small changes for gpu to compile/build under NaCl (part 1)nfullagar@google.com2010-05-182-19/+25
| | | | | | Review URL: http://codereview.chromium.org/2087011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47542 0039d316-1c4b-4281-b951-d872f2087c98
* Enables vertex attrib 0 and assigns a buffer to itgman@chromium.org2010-05-1711-475/+992
| | | | | | | | | | | | | | | | | | | | and makes it impossible to disable. This makes most of the tests that were failing pass. The issue is OpenGL requires attrib 0 to be enabled or it doesn't render where as OpenGL ES 2.0 does not have this requirement. A bunch of the conformance tests that were failing were using only attrib 1. Since the command buffer can only render with vbos, no client side buffers, this seems like it works. TEST=a bunch more conformance tests pass BUG=none Review URL: http://codereview.chromium.org/2104004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47469 0039d316-1c4b-4281-b951-d872f2087c98
* Makes shader translation a runtime switch.gman@chromium.org2010-05-1714-113/+147
| | | | | | | | | | | | | | 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-1716-36/+443
| | | | | | | | | | | | | | | | | | | 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
* Revert 47329 - Map RGBA4/RGB5_A1 to RGBA and RGB565 to RGB in ↵rvargas@google.com2010-05-143-33/+1
| | | | | | | | | | | RenderbufferStorage. Review URL: http://codereview.chromium.org/2119001 TBR=zmo@google.com Review URL: http://codereview.chromium.org/2074008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47334 0039d316-1c4b-4281-b951-d872f2087c98
* Map RGBA4/RGB5_A1 to RGBA and RGB565 to RGB in RenderbufferStorage.zmo@google.com2010-05-143-1/+33
| | | | | | Review URL: http://codereview.chromium.org/2119001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47329 0039d316-1c4b-4281-b951-d872f2087c98
* Landing revision 47182 again: Added dependency on ANGLE for all platforms ↵alokp@chromium.org2010-05-142-47/+22
| | | | | | | | now that it compiles on mac and linx. Also added a GYP flag 'enable_shader_translation'. To enable shader translation define env variable: GYP_DEFINES="enable_shader_translation=1". Review URL: http://codereview.chromium.org/2134002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47295 0039d316-1c4b-4281-b951-d872f2087c98
* Moved demos.gyp from windows dependency to all platforms. Excluded ↵alokp@chromium.org2010-05-141-0/+5
| | | | | | | | gpu_demo_framework_pepper from being included with wildcard demos.gyp:*. Review URL: http://codereview.chromium.org/2038015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47270 0039d316-1c4b-4281-b951-d872f2087c98
* Work around bug in gcc's name mangling causing linker to crash on Mackbr@google.com2010-05-141-3/+5
| | | | | | | | | | | | OS X. BUG=40845 TEST=none TBR=gman Review URL: http://codereview.chromium.org/2079003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47225 0039d316-1c4b-4281-b951-d872f2087c98
* Adds wrapping to support BOOL types on uniforms since some OpenGL driversgman@chromium.org2010-05-138-67/+391
| | | | | | | | | | | fail at this. TEST=conformance tests. BUG=43258 Review URL: http://codereview.chromium.org/2067002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47188 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 47182 - Added dependency on ANGLE for all platforms now that it ↵alokp@chromium.org2010-05-132-18/+50
| | | | | | | | | | | compiles on mac and linx. Also added a GYP flag 'enable_shader_translation'. To enable shader translation define env variable: enable_shader_translation=1. Review URL: http://codereview.chromium.org/1988011 TBR=alokp@chromium.org Review URL: http://codereview.chromium.org/2082004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47185 0039d316-1c4b-4281-b951-d872f2087c98
* Added dependency on ANGLE for all platforms now that it compiles on mac and ↵alokp@chromium.org2010-05-132-50/+18
| | | | | | | | linx. Also added a GYP flag 'enable_shader_translation'. To enable shader translation define env variable: enable_shader_translation=1. Review URL: http://codereview.chromium.org/1988011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47182 0039d316-1c4b-4281-b951-d872f2087c98
* Enabled gpu unit-tests on linux.alokp@chromium.org2010-05-131-20/+10
| | | | | | | | BUG=40015 TEST=GPU unit tests Review URL: http://codereview.chromium.org/2063001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47153 0039d316-1c4b-4281-b951-d872f2087c98
* Step 1: Changing CommandBufferHelper to only use a portiongman@chromium.org2010-05-1214-41/+46
| | | | | | | | | | | | | | | | | of the command buffer. This brought out the fact that there were lots of places in the code mixing size in bytes with num command buffer entries. This fixes most of those issues. No public interface uses num command buffer entries except gpu::CommandBuffer::State where it makes sense. TEST=relying on unit tests, conformance tests and chrome BUG=none Review URL: http://codereview.chromium.org/2008014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47041 0039d316-1c4b-4281-b951-d872f2087c98
* Changes the command buffer code to check that allgman@chromium.org2010-05-125-78/+228
| | | | | | | | | | | | enabled vertex attribs are valid, not just the ones the current program is using. TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/2021007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47040 0039d316-1c4b-4281-b951-d872f2087c98
* update the docs for command buffers.gman@chromium.org2010-05-111-8/+12
| | | | | | | | | | There are no code changes in this CL. TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46922 0039d316-1c4b-4281-b951-d872f2087c98
* Fix typogman@chromium.org2010-05-101-1/+1
| | | | | | | | | TBR=apatrick@chromium.org TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46819 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit CL http://codereview.chromium.org/1992008/gman@google.com2010-05-0822-193/+426
| | | | | | | | | 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-0822-403/+176
| | | | | | | | | | | | | | | | | | | | 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-0722-176/+403
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* A few more changes for conformance tests.gman@chromium.org2010-05-0712-23/+104
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/1985006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46699 0039d316-1c4b-4281-b951-d872f2087c98
* Various fixes for the OpenGL ES 2.0 conformance tests.gman@chromium.org2010-05-0619-95/+318
| | | | | | | | | | | | | | Was failing 268 of 1198 Now failing 266 of 1198 ugh! all those changes only fixed 2 tests :-( TEST=some unit test and conformance tests. BUG=none Review URL: http://codereview.chromium.org/1942004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46572 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some memory leaks in GPU tests.estade@chromium.org2010-05-044-30/+13
| | | | | | | | | BUG=42904 TEST=run the tests Review URL: http://codereview.chromium.org/1796010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46303 0039d316-1c4b-4281-b951-d872f2087c98
* Fix readpixels issuegman@chromium.org2010-05-031-1/+1
| | | | | | | | | | | will check in tests when machine is working again TBR=kbr@chromium.org TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46297 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for shared resources.gman@chromium.org2010-05-0328-98/+898
| | | | | | | | | | | | | | | | It's not clear how to test this easily it seems like we an integration test is needed at some point. I did run the conformance tests with share_resources set to true and it rand without crashing. TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/1817002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46264 0039d316-1c4b-4281-b951-d872f2087c98
* Remove check for bound framebuffer for swapbuffers.gman@chromium.org2010-04-301-6/+0
| | | | | | | | | TEST=conformance tests don't crash. BUG=none Review URL: http://codereview.chromium.org/1697018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46018 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Bug in RingBuffergman@chromium.org2010-04-303-16/+39
| | | | | | | | | TEST=unit test BUG=42859 Review URL: http://codereview.chromium.org/1806003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46017 0039d316-1c4b-4281-b951-d872f2087c98
* Changed angleproject to angle due to name change.alokp@chromium.org2010-04-293-9/+9
| | | | | | Review URL: http://codereview.chromium.org/1712020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45988 0039d316-1c4b-4281-b951-d872f2087c98
* Adds error messages for synthesized gl errors.gman@chromium.org2010-04-297-428/+583
| | | | | | | | | | | | | The next step would be to expose the service side once to the client but this step just adds the strings. TEST=none BUG=none Review URL: http://codereview.chromium.org/1699022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45909 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed off-by-one bug in returned name length in glGetActiveAttrib andkbr@google.com2010-04-291-2/+4
| | | | | | | | | | | glGetActiveUniform. BUG=none TEST=ran o3d-webgl tests Review URL: http://codereview.chromium.org/1748014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45905 0039d316-1c4b-4281-b951-d872f2087c98
* Changes the GLES2Implementation to use a RingBuffergman@chromium.org2010-04-286-18/+576
| | | | | | | | | | | | to manage the transfer buffer. This is significantly faster than the FencedAllocator for our purposes. TEST=some unit tests BUG=none Review URL: http://codereview.chromium.org/1796002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45844 0039d316-1c4b-4281-b951-d872f2087c98
* Added shader type to shader info.alokp@chromium.org2010-04-284-13/+30
| | | | | | Review URL: http://codereview.chromium.org/1696012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45823 0039d316-1c4b-4281-b951-d872f2087c98
* Temporarily removed references to angleproject. It will be added back when ↵alokp@chromium.org2010-04-271-7/+7
| | | | | | | | | angleproject is added. Still fighting with gclient to make it forget about previous references to angleproject. TBR=kbr@chromium.org Review URL: http://codereview.chromium.org/1739013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45746 0039d316-1c4b-4281-b951-d872f2087c98
* Add eglGetProcAddress to pgl.gman@chromium.org2010-04-274-312/+319
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/1797001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45734 0039d316-1c4b-4281-b951-d872f2087c98
* glGetProgramiv was returning incorrect values for ↵alokp@chromium.org2010-04-272-3/+6
| | | | | | | | GL_ACTIVE_UNIFORM_MAX_LENGTH and GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. It was not adjusting for NULL terminator. Review URL: http://codereview.chromium.org/1750015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45732 0039d316-1c4b-4281-b951-d872f2087c98
* GPU service interprets glFinish as glFlush.apatrick@chromium.org2010-04-273-3/+7
| | | | | | | | | | | | | This is so the single threaded GPU service does not get delayed executing glFinish, which could prevent progress in rendering all other GL contexts. Instead just issue a glFlush to ensure that the pending commands will be processed in the future. From a client side perspective the semantics of glFlush and glFinish are still different. glFlush is asynchronous whereas glFinish is synchronous. The latter waits for the service to acknowledge that it has issued the glFlush. glFinish can therefore be used to synchronize multiple threads that are issuing commands to GL contexts that share a common namespace. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/1719019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45724 0039d316-1c4b-4281-b951-d872f2087c98
* Changes the code to use separate ids namspacesgman@chromium.org2010-04-2733-1013/+903
| | | | | | | | | | | | for buffers, textures, programs, etc.. This is needed to pass GLES2 conformance tests. TEST=old unit tests BUG=none Review URL: http://codereview.chromium.org/1747013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45654 0039d316-1c4b-4281-b951-d872f2087c98
* Added third_party/angleproject to gpu/DEPS to pass checkdeps.alokp@chromium.org2010-04-261-0/+1
| | | | | | Review URL: http://codereview.chromium.org/1745015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45620 0039d316-1c4b-4281-b951-d872f2087c98
* Made gpu demo framework plugins fail without crashing if pepper 3D cannot be ↵apatrick@chromium.org2010-04-262-11/+33
| | | | | | | | | | | initialized. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/1775001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45617 0039d316-1c4b-4281-b951-d872f2087c98
* An implementation of eglProcAddressgman@chromium.org2010-04-261-0/+312
| | | | | | | | | | | | | I don't auto-generate this because it seems like we should make sure to expressly expose only those functions we want to expose. TEST=none BUG=none Review URL: http://codereview.chromium.org/1700015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45614 0039d316-1c4b-4281-b951-d872f2087c98
* Integrated glsl translator with command-buffer service.alokp@chromium.org2010-04-232-6/+71
| | | | | | Review URL: http://codereview.chromium.org/1773001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45485 0039d316-1c4b-4281-b951-d872f2087c98
* Removed direct inclusion of GL headers from gl_utils.h.apatrick@chromium.org2010-04-221-4/+0
| | | | | | | | | | | Now they are included indirectly via glew. This caused a problem for some people building for linux. TEST=trybots BUG=41039 Review URL: http://codereview.chromium.org/1714004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45338 0039d316-1c4b-4281-b951-d872f2087c98
* Landing 45240 again.apatrick@chromium.org2010-04-2219-1585/+48
| | | | | | | | | | | | | | GLContext implementations were dependent on some stuff in app/. Moved GLContext class to app/gfx/gl. Now it can be used by code outside of the gpu project, for example AcceleratedSurface. TEST=trybots, checkdeps BUG=none Review URL: http://codereview.chromium.org/1689006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45335 0039d316-1c4b-4281-b951-d872f2087c98
* A bunch more GLES2 conformance test fixes.gman@chromium.org2010-04-2211-114/+256
| | | | | | | | | | | | | | 1) All the glIsXXX functions were wrong 2) unlike buffers, renderbuffers, framebuffers, etc texture 0 is valid. 3) UseProgram accepts 0. 4) make glShaderSource fail if passed a NULL pointer (the spec doesn't say this afaict) TEST=conformance tests BUG=none Review URL: http://codereview.chromium.org/1750005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45293 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 45240 - Moved GLContext class to gfx/gl.apatrick@chromium.org2010-04-2119-47/+1585
| | | | | | | | | | | | | | Now it can be used by code outside of the gpu project, for example AcceleratedSurface. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/1694003 TBR=jamesr@chromium.org Review URL: http://codereview.chromium.org/1747007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45244 0039d316-1c4b-4281-b951-d872f2087c98