- 21 Sep, 2010 2 commits
-
-
enne@chromium.org authored
This setting is only used when an application wants to control which samples are written to. If it is disabled, multisampling should just write to all samples. BUG=38 Review URL: http://codereview.appspot.com/2194043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@431 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
enne@chromium.org authored
Change the type check to allow blitting between render buffers and render textures. Store the format for render textures so that resolving to a render texture Colorbuffer will pass the format check. BUG=37 Review URL: http://codereview.appspot.com/2205043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@430 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 20 Sep, 2010 3 commits
-
-
apatrick@chromium.org authored
This fixes this crash in 7.0.524.0 on a user's Windows XP service pack 3 box. 0x014946f3 [libGLESv2.dll - texture.cpp:1382] gl::Texture2D::generateMipmaps() 0x0149786f [libGLESv2.dll - libglesv2.cpp:2114] glGenerateMipmap 0x01c53199 [chrome.dll - gles2_cmd_decoder.cc:2437] gpu::gles2::GLES2DecoderImpl::DoGenerateMipmap(unsigned int) 0x01c52216 [chrome.dll - gles2_cmd_decoder.cc:2214] gpu::gles2::GLES2DecoderImpl::DoCommand(unsigned int,unsigned int,void const *) 0x01c4fa78 [chrome.dll - cmd_parser.cc:56] gpu::CommandParser::ProcessCommand() 0x01c4f8ba [chrome.dll - gpu_processor.cc:100] gpu::GPUProcessor::ProcessCommands() 0x01ecdcce [chrome.dll - callback.h:119] CallbackImpl<BrowsingDataRemover,void ( BrowsingDataRemover::*)(void),Tuple0>::RunWithParams(Tuple0 const &) 0x01c4f2d9 [chrome.dll - callback.h:79] CallbackRunner<Tuple0>::Run() 0x01c4edce [chrome.dll - command_buffer_service.cc:80] gpu::CommandBufferService::Flush(int) 0x01d6b9b1 [chrome.dll - gpu_command_buffer_stub.cc:129] GpuCommandBufferStub::OnFlush(int,gpu::CommandBuffer::State *) This might be glGenerateMipmaps after a device lost. Review URL: http://codereview.appspot.com/2227044 git-svn-id: https://angleproject.googlecode.com/svn/trunk@429 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
Trying to fix bug crash when eglCreateWindowSurface (or any other code that causes createDevice to be invoked) is called and CreateDevice reports DEVICELOST or NOTAVAILABLE. This was a Windows XP service pack 3 box. 0x10002545 [libegl.dll - display.cpp:340] egl::Display::createDevice() 0x10002912 [libegl.dll - display.cpp:468] egl::Display::getDevice() 0x01d6a80f [chrome.dll - gpu_info_collector_win.cc:29] gpu_info_collector::CollectGraphicsInfo(GPUInfo *) 0x01d68eca [chrome.dll - gpu_thread.cc:104] GpuThread::OnEstablishChannel(int) Previously createDevice only checked for out of memory and the ASSERT(SUCCEEDED(result)) has no effect in release builds. I simulated the failure in a debugger and discovered a second place where a null dereference would occur in this case. I don't think this crash is technically correct but it prevents crashes. Review URL: http://codereview.appspot.com/2217043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@428 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
Specifically, it checks that mTexture is not null. This is to fix this crash that has been happening out in the wild: 0x01444822 [libGLESv2.dll - texture.cpp:1417] gl::Texture2D::getRenderTarget(unsigned int) 0x01445615 [libGLESv2.dll - texture.cpp:2048] gl::Texture::TextureColorbufferProxy::getRenderTarget() 0x01453bb0 [libGLESv2.dll - context.cpp:1579] gl::Context::applyRenderTarget(bool) 0x01455395 [libGLESv2.dll - context.cpp:2413] gl::Context::clear(unsigned int) 0x014460c4 [libGLESv2.dll - libglesv2.cpp:611] glClear 0x01c53b75 [chrome.dll - gles2_cmd_decoder.cc:3021] gpu::gles2::GLES2DecoderImpl::ClearUnclearedRenderbuffers(unsigned int,gpu::gles2::FramebufferManager::FramebufferInfo *) 0x01c53cee [chrome.dll - gles2_cmd_decoder.cc:3078] gpu::gles2::GLES2DecoderImpl::DoFramebufferTexture2D(unsigned int,unsigned int,unsigned int,unsigned int,int) 0x01c57c7d [chrome.dll - gles2_cmd_decoder_autogen.h:756] gpu::gles2::GLES2DecoderImpl::HandleFramebufferTexture2D(unsigned int,gpu::gles2::FramebufferTexture2D const &) 0x01c52197 [chrome.dll - gles2_cmd_decoder.cc:2214] gpu::gles2::GLES2DecoderImpl::DoCommand(unsigned int,unsigned int,void const *) 0x01c4fa78 [chrome.dll - cmd_parser.cc:56] gpu::CommandParser::ProcessCommand() 0x01c4f8ba [chrome.dll - gpu_processor.cc:100] gpu::GPUProcessor::ProcessCommands() It was a Windows XP service pack 3 box with Chrome 7.0.524.0. ANGLE was at r418 in this build. I suspect it attempted to glClear after a device lost, which caused needsRenderTarget to fail. This will hopefully patch it up so it doesn't crash. We'll need to check we aren't assuming mTexture is not null elsewhere. Review URL: http://codereview.appspot.com/2233045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@427 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 16 Sep, 2010 1 commit
-
-
daniel@transgaming.com authored
TRAC #13577 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@426 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 15 Sep, 2010 5 commits
-
-
alokp@chromium.org authored
Added API to query for active attribs and uniforms. These functions are modeled after glGetShaderiv, glGetProgramiv, glGetActiveAttrib, and glGetActiveUniform. The main difference between this and OpenGL API is that we do not have programs - just shaders. BUG=26 Review URL: http://codereview.appspot.com/2183041 git-svn-id: https://angleproject.googlecode.com/svn/trunk@425 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
Review URL: http://codereview.appspot.com/2180041 git-svn-id: https://angleproject.googlecode.com/svn/trunk@424 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
I suspect there is a bug whereby an owning reference to a RefCountObject is temporarily assigned to a BindingPointer, causing it to be destroyed and making the owning raw pointer go dangling. Making this change for mColorbufferProxy seemed to fix a crash in Chrome with canvas 2D. This was previously landed in r417 and r418. Review URL: http://codereview.appspot.com/2108047 git-svn-id: https://angleproject.googlecode.com/svn/trunk@423 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
I will recommit these as two separate patches: one for ID invalidation and one for reference counting issue. I will not recommit the FBO changes and since the GLES2 spec will soon make it undefined whether FBOs are in a shared namespace. Review URL: http://codereview.appspot.com/2154045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@422 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #13522 Original patch by Jim Hauxwell, fixed for full test suite conformance. Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@421 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 14 Sep, 2010 2 commits
-
-
vangelis@chromium.org authored
http://codereview.appspot.com/2187041/ (Having trouble checking it in with gcl so going straight to subversion) git-svn-id: https://angleproject.googlecode.com/svn/trunk@420 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
Landing on Vangelis' behalf. Original review: http://codereview.appspot.com/2184041/ git-svn-id: https://angleproject.googlecode.com/svn/trunk@419 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 11 Sep, 2010 2 commits
-
-
apatrick@chromium.org authored
TBR=vangelis@chromium.org Review URL: http://codereview.appspot.com/2147046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@418 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
This fixes the ANGLE crashes in Chrome when using canvas 2D. The issue was this: Renderbuffer *mColorbufferProxy = new RenderBuffer(...); // Reference count is zero. BindingPointer<RenderBuffer> tempRef; tempRef.set(mColorbufferProxy); // Reference count is one. tempRef.set(NULL); // Reference count is zero and object is destroyed, leaving mColorbufferProxy dangling. I also initially suspected the problem was that FBOs are not treated as shared and the implementation of shared FBOs is still in the patch. I believe GLES2 supports shared FBOs. My reading of the GLES2 spec is that when a shared object is deleted, it loses its id but retains its state if left bound elsewhere. I added that to RefCountObject. Review URL: http://codereview.appspot.com/2120045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@417 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 09 Sep, 2010 2 commits
-
-
alokp@chromium.org authored
BUG=25 Review URL: http://codereview.appspot.com/2122048 git-svn-id: https://angleproject.googlecode.com/svn/trunk@416 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
alokp@chromium.org authored
Added support for associating functions with extensions and performing validation when those functions are used in a shader. BUG=25 Review URL: http://codereview.appspot.com/2141046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@415 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 08 Sep, 2010 1 commit
-
-
alokp@chromium.org authored
Removed unnecessary member variables from TIntermAggregate. Replaced operator overloading with a proper function in TFunction. Review URL: http://codereview.appspot.com/2137043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@414 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 07 Sep, 2010 1 commit
-
-
alokp@chromium.org authored
Added mechanism to predefine associated macros for extensions. Also refactored the way extension behavior is initialized and updated. Please note that I still need to add validation that appropriate extensions are enabled before using an extension function. BUG=25 Review URL: http://codereview.appspot.com/2139042 git-svn-id: https://angleproject.googlecode.com/svn/trunk@413 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 01 Sep, 2010 4 commits
-
-
alokp@chromium.org authored
TEST=conformance tests. Review URL: http://codereview.appspot.com/2043043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@412 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@411 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@410 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #12909 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@409 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 31 Aug, 2010 3 commits
-
-
apatrick@chromium.org authored
It does not appear to be possible to pass a presentation interval to Present() or change it after creating the swap chain, short of calling Reset(). I decided to try fixing it by replacing the swap chain under the same conditions as a window resize. I tested it with a modified version of the simple vertex shader sample, passing various values to eglSwapInterval. My reading of the EGL spec might be wrong but I believe the interval state should be associated with the surface bound to the current context, rather than the display. Review URL: http://codereview.appspot.com/2036044 git-svn-id: https://angleproject.googlecode.com/svn/trunk@408 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
Issue=27 Original-Author: Vladimir Vukicevic Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@407 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #13222 Singed-off-by: Daniel Koch Author: Nicolas Capens <nicolas@transgaming.com> git-svn-id: https://angleproject.googlecode.com/svn/trunk@406 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 30 Aug, 2010 1 commit
-
-
apatrick@chromium.org authored
I believe I have implemented all features according to the spec. The application is to allow the Chrome command buffer scheduler to be smarter about deciding which command buffer to process. For example, if a WebGL app issued a call to ReadPixels, the scheduler will issue a fence and defer executing the ReadPixels until the status goes true. It can continue to work on other command buffers in the meantime. I tested by modifying the vertex shader demo. After issuing the SwapBuffers i made issue a fence and loop until the status went true and verified it looped several times. I also tested that by calling FinishFence before going into the loop that is did not loop at all. Review URL: http://codereview.appspot.com/1965043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@405 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 28 Aug, 2010 1 commit
-
-
daniel@transgaming.com authored
Trac #12909 Implements GL_OES_texture_float, GL_OES_texture_half_float, GL_OES_texture_float_linear, and GL_OES_texture_half_float_linear when supported by the hardware. Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods <shannon.woods@transgaming.com> git-svn-id: https://angleproject.googlecode.com/svn/trunk@404 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 26 Aug, 2010 1 commit
-
-
alokp@chromium.org authored
Allow derivative functions if derivative extension is enabled. I still need to add validation for "#extension GL_OES_standard_derivatives : enable". BUG=25 Review URL: http://codereview.appspot.com/1965045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@403 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 25 Aug, 2010 2 commits
-
-
alokp@chromium.org authored
Adding support for OES_standard_derivatives extension. This is not the complete implementation. Sending it to get feedback on the API. Is it OK to add extension support into TBuiltInResource? I could create a new struct for extensions but that would lead to API change. BUG=25 Review URL: http://codereview.appspot.com/1953047 git-svn-id: https://angleproject.googlecode.com/svn/trunk@402 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
apatrick@chromium.org authored
I think these reduced synchronization guarantees are still compliant with the spec. I found that this significantly improved the frame rate for some of our demos (40 fps to 50fps for one on my box). I will change the demo so that it does not call glFlush at all but I still think this is a valuable change. The OpenGL ES2 spec says: "The command void Flush( void ); indicates that all commands that have previously been sent to the GL must complete in finite time." My reading of it is that any GL calls previously issued will be processed at some point in the future but not necessarily prior to glFlush returning. I believe that issuing the D3D event and then calling GetData once with the flush flag should meet these requirements. I also added some assertions to glFinish because I was paranoid that if issuing an event ever failed, the spin loop might never terminate. Review URL: http://codereview.appspot.com/1941049 git-svn-id: https://angleproject.googlecode.com/svn/trunk@401 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
- 24 Aug, 2010 9 commits
-
-
alokp@chromium.org authored
1. Removed unused functions 2. Removed unnecessary virtuality of functions 3. Grouped related functions together TEST=conformance tests Review URL: http://codereview.appspot.com/1984047 git-svn-id: https://angleproject.googlecode.com/svn/trunk@400 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #13046 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@399 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #12908 The lowest mip levels for DXT textures will have dimensions < 4, so a D3D texture cannot be created to hold them offscreen directly. Instead, we must create a larger texture one of whose mip levels would be the desired dimension, and store the surface from that texture for later inclusion in the final texture. Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@398 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #12714 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@397 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #12908 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@396 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@395 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #12717 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@394 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
added to the extension string. TRAC #12966 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@393 736b8ea6-26fd-11df-bfd4-992fa37f6226
-
daniel@transgaming.com authored
TRAC #12716 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@392 736b8ea6-26fd-11df-bfd4-992fa37f6226
-