| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is to work around bug where cubemaps larger than 512x512
have errors on all Intel macs up to and including OSX 10.7.2
TEST=none
BUG=99424
Review URL: http://codereview.chromium.org/8227030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105234 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
It is needed for the GL_GOOGLE_depth_texture extension.
BUG=99860
Review URL: http://codereview.chromium.org/8241020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105164 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
The counting of contexts in the group was out of sync, causing an assertion in release builds.
BUG=97775
Review URL: http://codereview.chromium.org/8205021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104791 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Before it relied on the destructor being invoked and this was not always true. I think the subsequent invalid GL commands might have caused memory corruption that lead to the bug referenced below.
Now the ContextGroup is destroyed explicitly when the context is known to be correct.
BUG=97775
Review URL: http://codereview.chromium.org/8135014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104157 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This works with ANGLE r780.
So if it's on top of ANGLE, query the translated HLSL using ANGLE's GetTranslatedShaderSource extension; otherwise, return the cached translated shader source from ANGLE shader translator.
BUG=95531
TEST=unittest
Review URL: http://codereview.chromium.org/8120020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104036 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
// TODO(apatrick): Attempt to diagnose crbug.com/97775. If SwapBuffers is
// never called on an offscreen context, no data will ever be uploaded to the
// saved offscreen color texture (it is deferred until to when SwapBuffers
// is called). My idea is that some nvidia drivers might have a bug where
// deleting a texture that has never has not been populated might cause a
// crash.
In the context of bug 97775, the uptime is very short. It is possible that SwapBuffers is never being called on the view context, which on mac is actually an offscreen context.
This is a bit a shot in the dark but I haven't reproduced it.
BUG=97775
Review URL: http://codereview.chromium.org/8089006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103746 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
context to obey WebGL feature semantics.
The 'force_webgl_glsl_validation' flag is used to override the FeatureInfo parameters of the context group.
This change enables all extensions for WebGL contexts, in preparation for allowing resource sharing with the compositor.
BUG=96605
TEST=https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/webgl-conformance-tests.html
Review URL: http://codereview.chromium.org/7782038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103724 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a GL_CHROMIUM_stream_texture extension with an abstract interface
that can be used to allow a consumer to render from a stream of textures being produced externally.
It adds the following functionality:
* GLuint glCreateStreamTextureCHROMIUM(GLuint texture)
This API takes a texture id and creates a StreamTexture object associated with the texture in the GPU process that can be implemented in a platform-specific way.
The returned handle is supposed to identify the stream endpoint. Connecting this to a producer is outside the scope of this change.
* GLvoid glDestroyStreamTextureCHROMIUM(GLuint texture)
Deletes the StreamTexture object associated with the texture and marks the texture as not special anymore.
* BindTexture() will invoke method StreamTexture::Update() if the target is GL_TEXTURE_EXTERNAL_OES and the texture is marked as 'stream texture'.
TEST=added unit tests
Review URL: http://codereview.chromium.org/7754033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103191 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
checking.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/7889040
TBR=dominich@chromium.org
Review URL: http://codereview.chromium.org/8052015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102985 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/7889040
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102978 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The bug was
1) Create a texture with N mips (4x4, 2x2, 1x1)
2) Then update the texture to use less than N mips (2x2, 1x1) etc.
The code would incorrectly look at the unused mips in determining
whether or not the texture was renderable.
TEST=unit test
BUG=97207
R=zmo@chromium.org
Review URL: http://codereview.chromium.org/8041048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102967 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/7977031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102366 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=bots green
Review URL: http://codereview.chromium.org/7979031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102213 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
OES extensions that are supported.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/7980034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102135 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
At the moment we need to turn it on for ATI/Mac and also Windows/D3D.
Also, added the switch to turn of driver bug workaround, although this CL doesn't hook it up with all workarounds yet.
BUG=96293
TEST=failing webgl glsl feature tests passing, with the switch, these tests fail.
Review URL: http://codereview.chromium.org/7923002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101880 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GpuScheduler and into GpuCommandBufferStub.
Reason for revert: Compile failure on Arm.
This was mostly a refactor because the code was awkward.
I also deleted the original gles2_demo since we have the gles2 book demos now.
THings still to do are a common way of setting up the few objects involved in initializing a command buffer that is now more-or-less duplicated in the gles2 conformance tests, the gles2 demos, the command buffer stub and the in-process webgl context. I also want to completely remove the reference to the decoder from the scheduler.
I tested WebGL on both windows and mac and saw no regressions. I checked the conformance tests, the gpu tests and am running by the try bots now. The gles2 demos still work.
Review URL: http://codereview.chromium.org/7782041
Review URL: http://codereview.chromium.org/7951008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101873 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GpuScheduler and into GpuCommandBufferStub.
Reason for revert: Compile failure on Arm.
This was mostly a refactor because the code was awkward.
I also deleted the original gles2_demo since we have the gles2 book demos now.
THings still to do are a common way of setting up the few objects involved in initializing a command buffer that is now more-or-less duplicated in the gles2 conformance tests, the gles2 demos, the command buffer stub and the in-process webgl context. I also want to completely remove the reference to the decoder from the scheduler.
I tested WebGL on both windows and mac and saw no regressions. I checked the conformance tests, the gpu tests and am running by the try bots now. The gles2 demos still work.
Review URL: http://codereview.chromium.org/7782041
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7920015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101547 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GpuCommandBufferStub.
This was mostly a refactor because the code was awkward.
I also deleted the original gles2_demo since we have the gles2 book demos now.
THings still to do are a common way of setting up the few objects involved in initializing a command buffer that is now more-or-less duplicated in the gles2 conformance tests, the gles2 demos, the command buffer stub and the in-process webgl context. I also want to completely remove the reference to the decoder from the scheduler.
I tested WebGL on both windows and mac and saw no regressions. I checked the conformance tests, the gpu tests and am running by the try bots now. The gles2 demos still work.
Review URL: http://codereview.chromium.org/7782041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101545 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/7888051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101308 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
by issuing too many SwapBuffers.
This might have regressed with r84372. It caused there to be one additional token queued in the swap buffers token queue than before.
Review URL: http://codereview.chromium.org/7876010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100978 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
by issuing too many SwapBuffers.
This might have regressed with r84372. It caused there to be one additional token queued in the swap buffers token queue than before.
BUG=95649
Review URL: http://codereview.chromium.org/7867053
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7880009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100803 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
many SwapBuffers.
This might have regressed with r84372. It caused there to be one additional token queued in the swap buffers token queue than before.
BUG=95649
Review URL: http://codereview.chromium.org/7867053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100801 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ScopedMakeCurrent to make it easier to briefly make another context
current. Use it in AcceleratedSurface implementation and verify in the
caller that it is working.
This infrastructure would have made it possible to catch
http://crbug.com/95492 and similar bugs where the wrong context was
current.
BUG=95962
TEST=ran CSS 3D example poster-circle; no assertion failures
Review URL: http://codereview.chromium.org/7787022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100528 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=95625
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7796016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100507 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SimulateAttrib0.""
The bug was a unsigned->signed conversion issue. Clang truncates, gcc/vc overflow
TEST=unit tests
BUG=95625
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7863007
TBR=gman@chromium.org
Review URL: http://codereview.chromium.org/7796015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100498 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The bug was a unsigned->signed conversion issue. Clang truncates, gcc/vc overflow
TEST=unit tests
BUG=95625
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7863007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100494 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
not check for out of memory."
TEST=unit tests and run on linux touch (where bug was)
BUG=95625
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7841067
TBR=gman@chromium.org
Review URL: http://codereview.chromium.org/7866006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100473 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
out of memory."
TEST=unit tests and run on linux touch (where bug was)
BUG=95625
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7841067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100453 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It also did not correctly check for math overflow. Also fixed
similar bugs in SimulateFixedAttribs
TEST=unit tests
BUG=95625
R=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7845017
TBR=gman@chromium.org
Review URL: http://codereview.chromium.org/7857037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100411 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It also did not correctly check for math overflow. Also fixed
similar bugs in SimulateFixedAttribs
TEST=unit tests
BUG=95625
R=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7845017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100384 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=95492
TEST=crash reports do not reappear in canary
Review URL: http://codereview.chromium.org/7847016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100350 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a regression introduced by http://codereview.chromium.org/7795015
BUG=95611
TEST=viewport-unchanged-upon-resize.html, read-pixels-test.html
Review URL: http://codereview.chromium.org/7841047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100277 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
TEST=unit tests
BUG=95115
R=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7789021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100116 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use clock() instead of time() to determine how much time has passed, as that likely has a higher resolution. Also add back in the old flush logic, as a backup in case clock() doesn't have a high-enough resolution to cause it to flush before the entire command buffer is used up.
BUG=
TEST=
Review URL: http://codereview.chromium.org/7789023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100057 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=95492
TEST=launch chrome to http://www.webkit.org/blog-files/3d-transforms/poster-circle.html
Review URL: http://codereview.chromium.org/7839037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99978 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
previous CL: http://codereview.chromium.org/7737013/
BUG= http://code.google.com/p/chromium/issues/detail?id=94320
TEST= try bots, manual testing
Review URL: http://codereview.chromium.org/7837018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99968 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG= http://code.google.com/p/chromium/issues/detail?id=94320
TEST= various nacl exmaples, try bots
Review URL: http://codereview.chromium.org/7737013
TBR=nfullagar@google.com
Review URL: http://codereview.chromium.org/7782020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99861 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG= http://code.google.com/p/chromium/issues/detail?id=94320
TEST= various nacl exmaples, try bots
Review URL: http://codereview.chromium.org/7737013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99855 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
This bug was found by AddressSanitizer
TBR=gman
Review URL: http://codereview.chromium.org/7828094
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99704 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
intended to share canvas "back buffers" between the GPU process and the browser process. The plan is to issue all the GL calls in the GPU process now, with the browser process just doing the final present. Removing the redundant code.
Review URL: http://codereview.chromium.org/7701021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99424 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GPU can't rely on base because of nacl so it has its own logger. The logger
includes <iostream> in the header, so most gles2 and command buffer files have
std::__ioinit static initializers. Create a common logging.cc which has a
simple method that just returns std::cerr so all the __ioinits collapse down to
one.
BUG=94794
TEST=compiles
R=apatrick
TBR=noelallen
Review URL: http://codereview.chromium.org/7821004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99229 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previous code was resizing, and clearing the front buffer as soon as the back
buffer was resized. It can lead to race conditions where the compositor draws a
black texture if it triggers between the resize and the swap.
BUG=None
TEST=Pepper Flash
Review URL: http://codereview.chromium.org/7795015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98905 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
The echo message is essentially an async fence with event based notification. The client gets a notification when the GPU process has completed all the work up to the last flush.
I used it to replace the SwapBuffers / OnSwapBuffers synchronization and got rid of some of the callbacks in the lower layers of the stack.
The SwapBuffers callbacks in the GPU process are only needed on mac now and I will replace them with something more generic soon.
Review URL: http://codereview.chromium.org/7762013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98747 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
as possible workaround for crash in NVIDIA driver on Mac. Also fixed
bug ID in comment.
BUG=94103
TEST=none (manually tested some WebGL content)
Review URL: http://codereview.chromium.org/7800006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98729 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
builds with some apps) - Further attempted workarounds for Mac- and NVIDIA-specific crash. Can
not reproduce this crash in house any more, so adding more code along
the lines of the earlier fix which was known to work on some hardware.
BUG=94103
TEST=none (tested manually to verify no regression)
Review URL: http://codereview.chromium.org/7756001
TBR=kbr@google.com
Review URL: http://codereview.chromium.org/7795006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98694 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
not reproduce this crash in house any more, so adding more code along
the lines of the earlier fix which was known to work on some hardware.
BUG=94103
TEST=none (tested manually to verify no regression)
Review URL: http://codereview.chromium.org/7756001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98355 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=94103
TEST=none
Review URL: http://codereview.chromium.org/7740010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98146 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=rolled output into NaCl
Review URL: http://codereview.chromium.org/7669034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98083 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
crashes during resizing. Explicitly delete and re-create the FBO
associated with the "saved texture", to give the driver a hint that
drawing commands targeting the old texture must be flushed.
(Re-land of http://codereview.chromium.org/7685024/ with gpu_unittest
fixes.)
BUG=89557
TEST=none (manually resized window with test case from bug; no crashes)
Review URL: http://codereview.chromium.org/7711020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97776 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mac OS X 10.6 causing GPU process
crashes during resizing. Explicitly delete and re-create the FBO
associated with the "saved texture", to give the driver a hint that
drawing commands targeting the old texture must be flushed.
BUG=89557
TEST=none (manually resized window with test case from bug; no crashes)
Review URL: http://codereview.chromium.org/7685024
TBR=kbr@google.com
Review URL: http://codereview.chromium.org/7708022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97768 0039d316-1c4b-4281-b951-d872f2087c98
|