src/libGLESv2/Context.cpp


Log

Author Commit Date CI Message
daniel@transgaming.com a06aa870 2011-03-21T17:22:21 Track dirty texture parameters and images separately. TRAC #15703 Issue=86 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@590 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a9eb5dac 2011-03-21T16:39:16 Track texture serials instead of id's. TRAC #15703 Issue=86 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@589 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 38e76e53 2011-03-21T16:39:10 Keep track of applied textures and dirty state to minimize D3D calls. TRAC #15703 Issue=86 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@588 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com b5a3a6b6 2011-03-21T16:38:46 Texture image refactoring. TRAC #15703 Issue=86 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@583 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8a0a2db7 2011-03-21T16:38:20 InternalFormat and format are the same. TRAC #15703 Issue=86 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@580 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8fd34bd6 2011-02-18T02:52:14 Move geometry files. TRAC #15649 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@564 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1615be20 2011-02-09T16:30:06 Fix anti-aliased clears. TRAC #15445 Issue=82 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@556 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d2fd4f2a 2011-02-01T18:49:11 Fix FBO/Texture/renderbuffer class hierarchy issues TRAC #14744 Issue=51/52 Delegated format queries to RenderbufferStorage. Eliminated TextureColorbufferProxy by merging it into Colorbuffer. Abstracted texture colorbuffer queries. Moved some conversion functions to the right namespace. Fixed line-endings in Texture.cpp Signed-off-by: Daniel Koch Author: Nicolas Capens <nicolas@transgaming.com> git-svn-id: https://angleproject.googlecode.com/svn/trunk@553 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org b31f532d 2011-01-19T19:02:52 All surfaces follow D3D Y convention, i.e. (0, 0) is "top-left" rather than GL's "bottom-left". This eliminates the need to flip the default FBO to the D3D convention using additional blits when presenting and reduces VRAM usage for redundant window sized surfaces. I took out the gl_Position.y flip from the vertex shader so FBOs are rendered according to D3D conventions. Texture lookups are flipped on Y to compensate. Cube map +Y and -Y faces are swapped. Y is now flipped in various other places, including uploading and reading back texture data from / to system memory, functions that take pixel space coordinates, winding order for culling, the implementation of ddy, the calculation of gl_Position and gl_FragCoord in fragment shaders and the flipping of compressed texture tiles. Review URL: http://codereview.appspot.com/3265041 git-svn-id: https://angleproject.googlecode.com/svn/trunk@536 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 3aba7337 2011-01-14T15:08:35 BlitFramebuf: reuse local size variables Trac #15095 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@532 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com ddcd7378 2011-01-08T05:46:33 Re-implemented line loop support. TRAC #14870 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@530 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 83921386 2011-01-08T05:46:00 rewrite buffers implementation to support static buffers more efficiently Bug=89 Trac #13565 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@526 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 458da14d 2010-11-28T02:03:02 Increase the number of fragment uniform vectors. TRAC #14504 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@497 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 3175496d 2010-11-28T02:02:52 Implement gl_DepthRange using a single uniform vector. TRAC #14504 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@495 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 396c643d 2010-11-26T16:26:12 Increase the number of varying vectors to 10 on Shader Model 3.0 devices. TRAC #14503 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@492 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a5a8a0ad 2010-11-19T14:55:32 Fix active texture handling. TRAC #14429 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@488 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 996675c6 2010-11-17T13:06:29 Fixed skipping over internal uniforms in getActiveUniform. TRAC #14390 Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@483 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 9d7fc1db 2010-10-27T15:49:42 Add missing break statements to Context::getBooleanv Trac #14114 Reported in Bug=69 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@467 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 73a5db67 2010-10-15T17:58:13 Initialize renderbuffer variables. Make serials constant. Removed X1R5G5B5 support. TRAC #13792 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@460 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com ed828e5b 2010-10-15T17:57:30 Detect L8 and A8L8 texture support. TRAC #13792 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@455 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 5d752f29 2010-10-07T13:37:20 Add proper detection for maximum texture and renderbuffer size Trac #13849 Increased the maximum possible texture & renderbuffer size to 16384 (the minimum required for DX11 cards). Limit the actual maximum texture & renderbuffer size to the maximum that it reported by the underlying D3D9 device. Note that creating textures and renderbuffers at the maximum size will quickly exhaust video memory! Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@447 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org b2bdd06c 2010-10-05T02:24:30 Fixed NULL dereference in glClear. 6 crashes on Windows XP 1 crash on Windows 7 This was Canary 7.0.530.0 using ANGLE r429. 0x011f523b [libGLESv2.dll - context.cpp:2412] gl::Context::clear(unsigned int) 0x011e5f41 [libGLESv2.dll - libglesv2.cpp:611] glClear 0x020c400d [chrome.dll - gl_context.cc:33] gfx::GLContext::InitializeCommon() 0x020bb757 [chrome.dll - gl_context_egl.cc:138] gfx::NativeViewEGLContext::Initialize() 0x020b8946 [chrome.dll - gl_context_win.cc:502] gfx::GLContext::CreateViewGLContext(HWND__ *,bool) 0x01c4f6f8 [chrome.dll - gpu_processor_win.cc:35] gpu::GPUProcessor::Initialize(HWND__ *,gfx::Size const &,gpu::GPUProcessor *,unsigned int) 0x01d6e669 [chrome.dll - gpu_command_buffer_stub.cc:88] GpuCommandBufferStub::OnInitialize(int,void * *) It's crashing upon creation of the GL context, possibly the first context. Device lost would possibly explain the XP crashes. The Windows 7 box might have run out of video memory. I also checked another couple of NULL dereference crashes. Review URL: http://codereview.appspot.com/2197046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@444 736b8ea6-26fd-11df-bfd4-992fa37f6226
enne@chromium.org c5f8dea4 2010-09-21T16:40:30 Allow multisampling without enabling GL_SAMPLE_COVERAGE. 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 0fa74639 2010-09-21T16:18:52 Allow blitting to a render texture in BlitFramebuffer. 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
daniel@transgaming.com d10f869d 2010-09-16T19:56:52 Fixed masked glClear 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
apatrick@chromium.org 4e3bad4e 2010-09-15T17:31:48 Changed raw pointers to RefCountObject to BindingPointers. 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 ff8bdfb0 2010-09-15T17:27:49 Backing out r417 and r418. 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
vangelis@chromium.org cf66ebb8 2010-09-14T22:15:43 Renaming Context::mDepthStencilDirty flag to mDepthStencilInitialized to avoid breaking consistency 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 85dc42bf 2010-09-14T03:10:08 Reset DepthStencilSurface after Context::markAllStateDirty() has been called. 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
apatrick@chromium.org 5525502d 2010-09-11T02:12:47 Replaced raw pointers to RefCountObject to BindingPointer. 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
alokp@chromium.org d303ef9a 2010-09-09T17:30:15 ANGLE supports GL_OES_standard_derivatives now. BUG=25 Review URL: http://codereview.appspot.com/2122048 git-svn-id: https://angleproject.googlecode.com/svn/trunk@416 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com fe208885 2010-09-01T15:47:57 Replaces Windows line endings with Unix where needed Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@410 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1297d92b 2010-09-01T15:47:47 Implements support for renderable floating point textures. 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
daniel@transgaming.com d36c6a0a 2010-08-31T12:15:09 Implemented recovering from a lost device by context recreation. 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
apatrick@chromium.org d3bd0ad3 2010-08-30T18:55:36 Implemented GL_NV_fence extension. 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
daniel@transgaming.com 0a337e93 2010-08-28T17:38:27 Implement support for floating point textures. 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
apatrick@chromium.org 575e7910 2010-08-25T18:07:12 Changed glFlush to not wait until issued event is processed. 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
daniel@transgaming.com 01868135 2010-08-24T19:21:17 Implements compressed textures. 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 d36c2971 2010-08-24T19:21:07 Advertises the GL_OES_rgb8_rgba8 extension. Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@395 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 6397754a 2010-08-24T19:21:02 Implements support for rgb8 and rgba8 renderbuffer storage formats 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 3ea20e7c 2010-08-24T19:20:58 Fixes a bug where framebuffer_multisample was not properly being 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 97446d2f 2010-08-24T19:20:54 Implements multisample resolve capability 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
daniel@transgaming.com d470a1b5 2010-08-24T19:20:48 Implements multisample fragment operations TRAC #12711 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@391 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1f135d86 2010-08-24T19:20:36 Implements glRenderbufferMultisampleStorage TRAC #12714 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@390 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4cbc590f 2010-08-24T19:20:26 Implements blitFramebuffer TRAC #12713 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@389 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a27ff1ee 2010-08-24T19:20:11 Creates separate bind points for read & write framebuffers. TRAC #12712 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@387 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a9198d9c 2010-08-08T04:49:56 Implement EXT_texture_format_BGRA8888 and EXT_read_format_bgra Trac #13050, Issue=21 Original Author: Vladimir Vukicevic Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@370 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com bc3699da 2010-08-05T14:48:49 Implements fixes for problems discovered running San Angeles demo on Chrome TRAC #13077 - clamp scissor to rendertarget size - ensure textures are renderable when required Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@369 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 9ecb9f9d 2010-07-28T19:21:12 Sharing for buffer, texture and renderbuffer objects. TRAC #12496 Derive Renderbuffer, Texture and Buffer from RefCountObject. This class keeps a reference count for all objects that need cross-context reference counting, and also the object id. Restructure Renderbuffers to create a wrapper object and a storage object. Use BindingPointer for all binding points instead of binding by object id. Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@364 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0d25b005 2010-07-28T19:21:07 Create shared contexts. TRAC #12498 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@363 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com bbc57796 2010-07-28T19:21:05 Checks completeness of framebuffer before read operations. TRAC #12565 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@362 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0190f845 2010-07-28T19:21:02 Fixes FBO completeness check TRAC #12571 Automatically passes default framebuffer, and fails framebuffers which have no color attachments. Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@361 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com da13f3e9 2010-07-28T19:20:56 Adds resource manager class. TRAC #12493 The resource manager class is now in charge of allocation & management of objects which may be shared by multiple contexts. Signed-off-by: Andrew Lewycky Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@360 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com cdacc8e2 2010-07-28T19:20:50 Implement GL_OES_packed_depth_stencil TRAC #12336 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@358 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4f921eb4 2010-07-28T19:20:44 Renamed dx_Window to dx_Viewport TRAC #11594 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@356 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com be5a0867 2010-07-28T19:20:37 Implement gl_PointCoord on SM3 hardware TRAC #11594 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@355 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 6db8cab4 2010-07-22T20:39:50 ReadPixels recovers from device lost error. I found that when I switch desktops, GetRenderTargetData will return D3DERR_DEVICELOST. It is unclear to me whether ReadPixels should report a GL error in this case and if so, which one. I went with GL_OUT_OF_MEMORY. Let me know if that's wrong. This change is not sufficient to make eglGetError report EGL_CONTEXT_LOST. For a program doing exclusively offscreen rendering, ReadPixels might be the only place where D3DERR_DEVICELOST can be detected. The GLES code can't call egl::setCurrentError though. I'm not sure how to fix that. Review URL: http://codereview.appspot.com/1692053 git-svn-id: https://angleproject.googlecode.com/svn/trunk@350 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c6f53400 2010-06-24T13:02:19 Clear must ignore buffers that are not present. TRAC #12643 IDirect3DDevice9::Clear will fail if asked to clear a buffer that is not present, so we have to be careful what we pass to it. Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@341 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 353569a9 2010-06-24T13:02:12 Eliminates redundant calls to GetDeviceCaps TRAC #12283 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@339 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8f05d1aa 2010-06-07T02:06:03 Save D3D state before altering it for masked clears TRAC #12380 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@328 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com dd7948b3 2010-06-02T16:12:34 According to spec, the stencil ref is clamped to the range [0,2^s-1] The clamp to zero occurs on set since negative values will never be useful. The clamp to 2^s - 1 occurs on use since it is dependant on the currently bound stencil buffer Original-Author: Jim Hauxwell <james@dattrax.co.uk> Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@324 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 81655a72 2010-05-20T19:18:17 Use instancing for non-array vertex attributes. TRAC #12303 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@314 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com b28a23bd 2010-05-20T19:18:06 Fixes query for active texture TRAC #12374 Original-Author: Jim Hauxwell <james@dattrax.co.uk> Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@312 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 838bceae 2010-05-20T19:17:42 Detect draws that would read outside the vertex buffer. TRAC #12340 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@308 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com defa1c39 2010-05-18T18:51:45 Use plain data arrays for Buffer storage TRAC #12299 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@299 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 91fd1de6 2010-05-18T18:51:40 Caches the location of generic uniforms TRAC #12215 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@298 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a36f98ef 2010-05-18T18:51:09 Correct GLboolean handling for glColorMask and glSampleCoverage TRAC #11597 Signed-off-by: Shannon Woods Signed-off-bY: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@294 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c808c5a9 2010-05-14T17:31:01 When NONPOW2CONDITIONAL is set, limit NPOTs to a single level. TRAC #12250 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@283 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a71cdd7c 2010-05-12T16:51:14 Save render state across glFinish. TRAC #12164 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@270 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 5a0b0a8b 2010-05-12T03:45:07 Minimizes texture state changes TRAC #12203 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@267 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 41d8dd85 2010-05-12T03:45:03 Add better error checking on buffer updates TRAC #12186 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@266 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 339ae701 2010-05-12T03:40:20 Minimizes changes of the depth stencil buffer TRAC #12154 This patch reduces calls to SetDepthStencilSurface Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@261 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a79f9d18 2010-05-12T03:40:01 Minimizes render state changes TRAC #12154 This patch reduces redundant calls to SetRenderState Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@260 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 092bd481 2010-05-12T03:39:36 Minimizes render target changes TRAC #12154 This patch reduces calls to SetRenderTarget. Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@259 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4fa08339 2010-05-11T02:29:27 Prevent redundant uniform updates TRAC #12154 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@255 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 5bd0ce30 2010-05-07T13:03:31 Disable the stencil test when no stencil buffer TRAC #12181 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@246 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com baeb8c5b 2010-05-05T18:50:39 Skip drawing to a zero-area render target TRAC #12172 This also generates a GL_INVALID_FRAMEBUFFER_OPERATION error when glClear attempt to operate on an invalid or incomplete framebuffer. Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@241 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 3e4c6004 2010-05-05T18:50:13 Implement GL_OES_element_index_uint TRAC #11951 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@240 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8ede24f7 2010-05-05T18:47:58 Skip clear when writes masked TRAC #12157 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@232 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com ae072afe 2010-05-05T18:47:28 Minimize BeginScene / EndScene calls TRAC #12139 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@231 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 428d1587 2010-05-04T03:35:25 Makes the State struct a member of Context, rather than its parent. Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@226 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 713914b5 2010-05-04T03:35:17 Implements PACK_ALIGNMENT for ReadPixels TRAC #11484 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@224 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 95124346 2010-04-29T03:38:58 Deleting program does not delete shaders that are marked TRAC #12012 Resolve the crash on context deletion. Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@213 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a87bdf53 2010-04-29T03:38:55 Check for multisample conformance TRAC #11747 Only warn about sample coverage settings in a multisample context. Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@212 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8ee00ea2 2010-04-29T03:38:47 Investigate issues with transform_viewport conformance TRAC #12035 transform_viewport failed when rendering into an Nx1 or 1xN viewport. Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@209 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com aede6301 2010-04-29T03:35:48 Implements PolygonOffset TRAC #11719 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@208 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c3a0e946 2010-04-29T03:35:45 Fixes program validation regression. TRAC #11654 The sampler validation at render time was occurring before uniforms were applied and samplers were bound to their texture units. Sampler validation now occurs after shaders and textures have been applied. Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@207 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 71cd868d 2010-04-29T03:35:25 Deleting program does not delete shaders that are marked TRAC #12012 Also fixes failure to delete flagged program upon glUseProgram(0). Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@201 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 86a7a138 2010-04-29T03:32:32 Implements ValidateProgram TRAC #11654 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@196 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c164135c 2010-04-26T15:33:36 Implemented querying GL_BLEND_COLOR TRAC #12039 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@192 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 09fbfefa 2010-04-22T13:35:31 Implemented glGetActiveUniform TRAC #11929 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@181 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com b4ff1f8f 2010-04-22T13:35:18 Implemented aliased attributes support TRAC #11092 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@177 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com e4b08c8c 2010-04-20T18:53:06 Implement VertexAttrib TRAC #11878 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@174 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com bbf56f75 2010-04-20T18:52:13 Use directory qualified #include files Trac #11408 Signed-off-by: Andrew Lewycky Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@165 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 5af6427d 2010-04-15T20:45:12 Implemented gl_FrontFacing for lines and points TRAC #11419 Lines and points are always considered front-facing Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@153 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 72d0b52e 2010-04-13T19:53:44 Decorate all GLSL user-defined names with an underscore to avoid name clashes TRAC #11314 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@143 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com b8c28edd 2010-04-13T03:26:32 Implement CopyTex(Sub)Image2D TRAC #11474 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@132 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 79f6677d 2010-04-13T03:26:09 Implements support for IsEnabled TRAC #11750 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@124 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com afb23957 2010-04-13T03:25:54 Implemented glReadPixels for the implementation-dependent format Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@119 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4195fc43 2010-04-08T03:51:09 Resolve conflict between default cube map and 2D textures in texture map. TRAC #11625 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Andrew Lewycky git-svn-id: https://angleproject.googlecode.com/svn/trunk@106 736b8ea6-26fd-11df-bfd4-992fa37f6226