summaryrefslogtreecommitdiffstats
path: root/gpu
Commit message (Collapse)AuthorAgeFilesLines
* Convert more callers of the integer/string functions to usingbrettw@chromium.org2010-07-312-3/+8
| | | | | | | | | | string_number_conversions.h TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3013046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54454 0039d316-1c4b-4281-b951-d872f2087c98
* Adds range checking to glTexSubImage2D, glCompressedTexSubImage2D,gman@chromium.org2010-07-319-21/+473
| | | | | | | | | | | | | glCopyTexSubImage2D. Adds missing range tracking for glCopyTexImage2D Also makes glTexImage2D, glCopyTexImage2D and glCompressedTexImage2D check for errors. TEST=some unit test and ran conformance tests. BUG=none Review URL: http://codereview.chromium.org/3046033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54452 0039d316-1c4b-4281-b951-d872f2087c98
* Move the number conversions from string_util to a new file.brettw@chromium.org2010-07-301-2/+4
| | | | | | | | | | | | | Use the base namespace in the new file. Update callers. I removed all wstring variants and also the string->number ones that ignore the return value. That encourages people to write code and forget about error handling. TEST=included unit tests BUG=none Review URL: http://codereview.chromium.org/3056029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54355 0039d316-1c4b-4281-b951-d872f2087c98
* Bumped ANGLE rev in which shader translator API changed. Updated shader ↵alokp@chromium.org2010-07-271-30/+50
| | | | | | | | translation code to reuse compilers for performance. Review URL: http://codereview.chromium.org/3035028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53805 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for gman@chromium.org2010-07-208-15/+242
| | | | | | | | | | | | | | 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
* Fixed standalone command buffer demos.apatrick@chromium.org2010-07-201-1/+7
| | | | | | | | | TEST=try BUG=none Review URL: http://codereview.chromium.org/2870056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53057 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the gles2_demo to work with latest gpu processgman@chromium.org2010-07-193-0/+13
| | | | | | | | | | | stuff. Also added GL_BGRA_EXT to ElementsPerGroup TEST=hand ran gles2_demo BUG=none Review URL: http://codereview.chromium.org/2888016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52887 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity: Fix gpu::gles2::GetCommandName range check.mattm@chromium.org2010-07-161-5/+2
| | | | | | | | | | CID=7802 BUG=none TEST=none Review URL: http://codereview.chromium.org/2813056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52722 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for OpenGL ES 2.0 extensionsgman@chromium.org2010-07-1614-133/+455
| | | | | | | | | | | | | | 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
* Fixed bug with the way the command buffer code handledgman@chromium.org2010-07-153-10/+29
| | | | | | | | | | | arrays of uniforms. TEST=unit tests and WebGL conformance tests BUG=none Review URL: http://codereview.chromium.org/2834048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52552 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
* GLES2DecoderImpl takes ownership of GLContext passed to initialize.apatrick@chromium.org2010-07-149-49/+60
| | | | | | | | | | | This is to simplify the management of the GLContext lifetime (one per decoder) when we support shared contexts. TEST=try, WebGL demos BUG=none Review URL: http://codereview.chromium.org/2998001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52390 0039d316-1c4b-4281-b951-d872f2087c98
* Adds MapBufferSubData and MapTexSubImage2D.gman@chromium.org2010-07-1416-37/+1059
| | | | | | | | | | | | | | | | | 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
* Free the resources used by a context group.gman@chromium.org2010-07-0124-2/+371
| | | | | | | | | TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/2880013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51441 0039d316-1c4b-4281-b951-d872f2087c98
* Fix two webgl crashes.pathorn@chromium.org2010-06-251-27/+30
| | | | | | | | | | | | Uninitialized variable in getProgramInfoLog and friends. Fix crash in GLES2DecoderImpl if resizing the <canvas> when parent_ is null. BUG=44590 TEST=64-bit chrome on Linux is able to run the o3d-webgl samples. Review URL: http://codereview.chromium.org/2819025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50861 0039d316-1c4b-4281-b951-d872f2087c98
* Fix two problems with int32 <-> int32_t conversion when compiled in -pedanticmsneck@google.com2010-06-241-3/+3
| | | | | | | | | | mode inside Native Client. BUG=none TEST=none Review URL: http://codereview.chromium.org/2834023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50760 0039d316-1c4b-4281-b951-d872f2087c98
* Clear the copy of the offscreen texture used by shared contexts after the ↵vangelis@chromium.org2010-06-221-29/+28
| | | | | | | | | | DEPTH, STENCIL attachments have been resized since FBOs don't work if the attachment texture sizes don't match. BUG=47185 Review URL: http://codereview.chromium.org/2872010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50499 0039d316-1c4b-4281-b951-d872f2087c98
* gpu: add GLES/EGL support on linuxpiman@chromium.org2010-06-215-8/+2
| | | | | | Review URL: http://codereview.chromium.org/2829007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50397 0039d316-1c4b-4281-b951-d872f2087c98
* Map RGBA4/RGB5_A1 to RGBA and RGB565 to RGB in RenderbufferStorage.zmo@google.com2010-06-185-3/+40
| | | | | | Review URL: http://codereview.chromium.org/2868007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50288 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed bug where code in GPU process was trying to lookup a texture by ↵apatrick@chromium.org2010-06-161-3/+3
| | | | | | | | | | | service if rather than client id. TEST=try BUG=none Review URL: http://codereview.chromium.org/2858006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50017 0039d316-1c4b-4281-b951-d872f2087c98
* Working towards -Wextrathomasvl@chromium.org2010-06-161-1/+1
| | | | | | | | | | | | - Make loops use {} instead of a ';' to make it clear there is no body to the loop. - Remove checks of unsigned values for <0 - coordinates should be CGFloat, not NSUInteger. BUG=34160 TEST=none Review URL: http://codereview.chromium.org/2865003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49939 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor validation code so it can be modified at runtime.gman@chromium.org2010-06-159-803/+785
| | | | | | | | | | | I'll move the DXT stuff out after this CL lands. TEST=ran unit and conformance tests BUG=44368 Review URL: http://codereview.chromium.org/2689006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49850 0039d316-1c4b-4281-b951-d872f2087c98
* Committing on behalf of p155off@gmail.com .kbr@google.com2010-06-151-2/+1
| | | | | | | | | | | | | Remove duplicated code in AcceleratedSurface using PbufferGLContext instead. This also fixes a crash caused by the OpenGL bindings not being initialized. BUG=46286 TEST=flash plugin 10.1 works again in both mac 10.5 and 10.6 Review URL: http://codereview.chromium.org/2782006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49836 0039d316-1c4b-4281-b951-d872f2087c98
* Changes required to get glValidateProgram to workgman@chromium.org2010-06-1412-56/+161
| | | | | | | | | | | correctly. TEST=unit tests and conformance tests. BUG=none Review URL: http://codereview.chromium.org/2725006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49705 0039d316-1c4b-4281-b951-d872f2087c98
* Added EGL based GLContext.apatrick@chromium.org2010-06-0922-1374/+224
| | | | | | | | | | | | | | Python script to generate code to dynamically bind to GL functions (native GL, OSMesa, EGL or mock GL for unit tests). This replaces GLEW because GLEW doesn't bind to the GLES dialect of GL. Moved the mock GL code into app/gfx/gl. Updated the GPU code and AcceleratedSurface to use the new GL bindings. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/2134006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49332 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for DrawArrays, DrawElements. Removed the checkgman@chromium.org2010-06-091-2/+5
| | | | | | | | | | | | | | | | for an invalid program. The check is already in UseProgram. If that check passes the program is "installed" at which point it, even if LinkProgram is called and fails, marking the program as invalid, the previously installed program is still in use until UseProgram is called. TEST=none BUG=none Review URL: http://codereview.chromium.org/2770007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49293 0039d316-1c4b-4281-b951-d872f2087c98
* Makes LinkProgram fail if both a vertex and fragment shadergman@chromium.org2010-06-077-31/+197
| | | | | | | | | | | | are not present. Desktop GL doesn't fail this case because the fixed function pipeline can be a substitute for either TEST=unit tests BUG=none Review URL: http://codereview.chromium.org/2582002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49073 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of DISALLOW_EVIL_CONSTRUCTORS macro usage in our code base.tfarina@chromium.org2010-06-071-4/+1
| | | | | | | | | | | TODO: Fix the remaining usages in third_party libraries and get rid of the macro in question. BUG=None TEST=trybots Review URL: http://codereview.chromium.org/2657005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49032 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor CommandBufferHelper to use Jump to loopgman@chromium.org2010-06-034-40/+75
| | | | | | | | | | | | | instead of Noop. This makes it actually work if you tell the command buffer helper to use less than the entire command buffer. TEST=modified unit tests and ran GLES2 conformance tests. BUG=NONE Review URL: http://codereview.chromium.org/2509001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48835 0039d316-1c4b-4281-b951-d872f2087c98
* Expose UpdateOffscreenFrameBufferSize from GLES2Decoder to allow Mackbr@google.com2010-06-024-2/+9
| | | | | | | | | | | | | | | port to call it during resizing. Because the Mac port does all of its rendering offscreen, the back buffer must be resized immediately rather than waiting until the next SwapBuffers call. Tested with npapi_pepper_test_plugin and GPU unit tests. BUG=45246 TEST=none Review URL: http://codereview.chromium.org/2466003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48789 0039d316-1c4b-4281-b951-d872f2087c98
* Adds tracking of number of unrenderable textures sogman@chromium.org2010-06-024-75/+183
| | | | | | | | | | | | that we can quickly decide at glDrawXXX time whether or not we have to do more work. TEST=unit tests BUG=42671 Review URL: http://codereview.chromium.org/2429005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48787 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a bunch more type changes as part of the npapi.h mergingstuartmorgan@chromium.org2010-06-022-2/+2
| | | | | | | | | | | | | This makes two types of changes - More int* -> int*_t transitions, since npapi.h switched over - Replace TRUE/FALSE, which have been removed from the upstream npapi.h. Since all our usage is C++, true/false seemed cleaner than 1/0. BUG=42645 TEST=Compiling still works Review URL: http://codereview.chromium.org/2484002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48725 0039d316-1c4b-4281-b951-d872f2087c98
* Change black to 0,0,0,1 instead of 0,0,0,0.003921gman@chromium.org2010-06-011-2/+2
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/2469003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48671 0039d316-1c4b-4281-b951-d872f2087c98
* 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