src/libGLESv2


Log

Author Commit Date CI Message
daniel@transgaming.com 92d620c3 2012-05-31T01:16:31 Advertise support for ANGLE_depth_texture Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1116 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 68145c6f 2012-05-31T01:14:46 Apply the depth texture correctly as the DepthStencil surface in applyRenderTarget Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1115 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 63e6afe9 2012-05-31T01:14:42 Ensure all getDepthStencil and getRenderTarget calls consistently handle references to the underlying d3d surfaces Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1114 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 6b7c84cd 2012-05-31T01:14:39 Update FBO completeness checks for depth textures Trac #20875 Signed-off-by: Nicolas Capens - improve missing attachment logic to allow no color attachments - disallow depth texture color attachments - allow texture depth and stencil attachments - update simulaneous depth/stencil logic git-svn-id: https://angleproject.googlecode.com/svn/trunk@1113 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d885df03 2012-05-31T01:14:36 do some cleanup in Framebuffer::completeness Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1112 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com f20bc216 2012-05-31T01:14:33 Add an IsDepthFormat helper function Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1111 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 08bfcc47 2012-05-31T01:14:29 Add TextureStorage support for INTZ depth textures and ensure Images never create INTZ surfaces Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1110 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 7aeab46f 2012-05-31T01:14:26 Factor renderability check into GetTextureUsage Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1109 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com e32d5699 2012-05-31T01:14:22 Pass the usage parameter into TextureStorage instead of passing a boolean Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1108 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 36884639 2012-05-31T01:14:18 Refactor texture usage logic to helper function Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1107 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1d2d3c46 2012-05-31T01:14:15 Move glTexSubImage early out check after more of the error checks are done. Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1106 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0c854684 2012-05-31T01:14:11 Report errors for unsupported Depth/stencil texture operations Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1105 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 835a95a5 2012-05-31T01:14:07 Allow depth and depth-stencil formats and types for textures and update utility functions Trac #20875 Signed-off-by: Nicolas Capens TexImage2D accepts format,internalformat=DEPTH_COMPONENT, type=UNSIGNED_SHORT format,internalformat=DEPTH_COMPONENT, type=UNSIGNED_INT format,internalformat=DEPTH_STENCIL_OES, type=UNSIGNED_INT_24_8_OES TexSubImage2D accepts format=DEPTH_COMPONENT, type=UNSIGNED_SHORT format=DEPTH_COMPONENT, type=UNSIGNED_INT format=DEPTH_STENCIL_OES, type=UNSIGNED_INT_24_8_OES TexStorage2DEXT accepts internalformat=DEPTH_COMPONENT16 internalformat=DEPTH_COMPONENT32_OES internalformat=DEPTH24_STENCIL8_OES git-svn-id: https://angleproject.googlecode.com/svn/trunk@1104 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1c49f79d 2012-05-31T01:14:02 Detect depth texture support using INTZ and NULL textures Trac #20875 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1103 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 355989bc 2012-05-09T15:49:29 Remove duplicate error checks from Texture subImage and subImageCompressed. Issue=306 Signed-of-by: Nicolas Capens These errors are validated by validateSubImageParams* now, no need to do it twice. git-svn-id: https://angleproject.googlecode.com/svn/trunk@1083 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4df88e8a 2012-05-09T15:49:24 Make TextureCubeMap size/format/compressed checks explicit about the level and face they are checking Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1082 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 92f49929 2012-05-09T15:49:19 Make Texture2D format and compression checks be explicit about the level they are checking Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1081 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4327cff3 2012-05-09T15:49:16 Remove unused base class Texture methods and make them non-virtual in derived classes Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1080 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com eb3c01a8 2012-05-09T15:49:12 make sure all texture->isCompressed calls are type-specific Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1079 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 46f2d0a9 2012-05-09T15:49:06 Split RenderbufferTexture into 2D and CubeMap specific variants Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1078 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com bf6e5d4d 2012-05-09T15:49:03 Remove the unused Texture::getType method Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1077 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2ccbbef1 2012-05-09T15:49:00 Split validateSubImageParams into a texture type-specific check Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1076 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 28eb3921 2012-05-09T15:48:57 Move the internal format check for compressed subImage commands to the API layer Issue=306 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1075 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2d669fce 2012-05-09T15:42:48 Texture: Avoid attempting to create 0 sized D3D textures Issue=301 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1074 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 56c62636 2012-05-09T15:42:45 Optimize Context::applyTextures by avoiding repeated getTextureSerial calls Issue=301 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1073 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 519c32ba 2012-05-01T15:24:05 Implement SSE2 version of loadAlphaData http://codereview.appspot.com/6050054/ Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Authored-by: Jin Yang With this patch, my HTML5 2D canvas benchmark with Chromium on Windows7 with GPU acceleration can boost about 4% though the most execution time is in GPU. git-svn-id: https://angleproject.googlecode.com/svn/trunk@1067 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 11399d5d 2012-04-28T00:35:14 Make sure the internal DX uniforms get updated after re-linking. TRAC #20659 Issue=321 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1063 736b8ea6-26fd-11df-bfd4-992fa37f6226
kbr@chromium.org ddb6e8e3 2012-04-25T00:48:13 Stop using unsafe sprintf method. ISSUE=308 Signed-off-by: Kenneth Russell Author: David Kilzer git-svn-id: https://angleproject.googlecode.com/svn/trunk@1052 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1f1b0d5d 2012-04-17T19:44:15 Fix signed 16.16 fixed-point conversion. TRAC #20561 ISSUE=320 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1045 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2e793f0f 2012-04-11T19:41:35 Decorate (and undecorate) struct fields too (when not built-in). Trac #20510 Issue=316,317 Authored-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1027 736b8ea6-26fd-11df-bfd4-992fa37f6226
bsalomon@google.com fc74c375 2012-04-11T17:53:24 Guard against null surface in Image::updateSurface. Review URL: https://codereview.appspot.com/5985051 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1026 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 88d91fbb 2012-04-04T22:54:37 Increase Vertex Decl cache size to 32 entries. This should reduce the risk of running out of cache entries inside a frame, while being small enough that iterating through it to find the correct entry shouldn't be too expensive. BUG=310 TEST= Review URL: https://codereview.appspot.com/5969077 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1018 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 807d8c33 2012-04-04T15:06:04 Fixed info log regressions. TRAC #20443 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1017 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 3b130253 2012-04-03T18:20:18 Make Image::lock and unlock private and call them from Image::loadData. This is because I want loadData to be able to decide whether to use LockRect/UnlockRect or UpdateSurface as the method to load the data, depending on whether the Images are backed by textures in the default pool or not. I think it actually cleans up the code a bit. Also, fixed a bug in subImageCompressed. The associated WebGL conformance test now passes. Review URL: https://codereview.appspot.com/5948043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1013 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 563c0a53 2012-03-23T21:18:42 Fence has pointer to the associated egl::Display. I think the assumption that getDisplay() returns a valid display in the Fence destructor is wrong. I'm trying to fix a crash in the field that looks like this: Thread 0 *CRASHED* ( EXCEPTION_ACCESS_VIOLATION_READ @ 0x00000000 ) 0x69582e38 [libglesv2.dll - fence.cpp:27 gl::Fence::~Fence() 0x69582f29 [libglesv2.dll + 0x00022f29] gl::Fence::`scalar deleting destructor'(unsigned int) 0x6958077d [libglesv2.dll - context.cpp:1020 gl::Context::deleteFence(unsigned int) 0x69582b9b [libglesv2.dll - context.cpp:195 gl::Context::~Context() 0x69582dcb [libglesv2.dll + 0x00022dcb] gl::Context::`scalar deleting destructor'(unsigned int) 0x69582df2 [libglesv2.dll - context.cpp:4259 glDestroyContext 0x73166ab8 [libegl.dll - display.cpp:768 egl::Display::destroyContext(gl::Context *) 0x73168393 [libegl.dll - libegl.cpp:861 eglDestroyContext 0x6e18f1db [chrome.dll - gl_context_egl.cc:76 gfx::GLContextEGL::Destroy() 0x6e18f40d [chrome.dll - gl_context_egl.cc:43 gfx::GLContextEGL::~GLContextEGL() Here's the disassembly: 69582E21 push esi 69582E22 mov esi,ecx 69582E24 cmp dword ptr [esi+4],0 69582E28 mov dword ptr [esi],695CBBE0h 69582E2E je 69582E3F 69582E30 call 695743F5 // this is getDisplay() 69582E35 push dword ptr [esi+4] 69582E38 mov edx,dword ptr [eax] // crashes here because EAX is zero 69582E3A mov ecx,eax 69582E3C call dword ptr [edx+24h] // this is freeEventQuery() 69582E3F pop esi 69582E40 ret It looks like getDisplay() returns null. http://code.google.com/p/chromium/issues/detail?id=117817 Review URL: https://codereview.appspot.com/5875044 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1008 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0f328a7a 2012-03-05T15:07:50 Revert "Fixed test for 16-bit index range". TRAC #19988 Issue=304 Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@998 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1e04e46b 2012-02-28T02:01:17 Fixed test for 16-bit index range. TRAC #19988 Issue=304 Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@995 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 51b2685b 2012-02-21T23:53:23 Don't use strlen inside of loop This could hurt performance quite a bit. BUG=296 TEST= Review URL: https://codereview.appspot.com/5675086 git-svn-id: https://angleproject.googlecode.com/svn/trunk@993 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0725e7df 2012-02-17T18:02:20 Support reloading the shader compiler Trac #19900 Issue=291 - Move compiler initialization to a separate function - all this function to ensure the compiler is loaded when a compile is attempted (previously if the compiler was released, you'd have to create a new shader object to get it reloaded). Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@992 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 938009cf 2012-02-17T18:02:15 Add ability to recompile shader source Trac# 19900 Issue=291 - add an 'uncompile' function to clear all results from any previous compile attempts - allow compiling to be done multiple times on the same shader - allow a shader to be compiled with no source specified (to produce an appropriate error). Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@991 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com cde6a610 2012-02-17T18:01:10 Rename the Shader 'varyings' member to 'mVaryings' to follow coding standard Trac #19900 Issue=291 Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@990 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2cdf833c 2012-02-17T18:00:50 Provide better encapsulation for Shader member variables Trac 19900 Issue=291 Moved a bunch of member variables from 'protected' to 'private' Signed-off-by: Shannon Woods Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@989 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com cb37afdb 2012-02-01T18:10:40 The normalized argument of vertexAttribPointer should not affect float and fixed. Issue=155 Signed-off-by: Nicolas Capens Author: Pierre Leveille git-svn-id: https://angleproject.googlecode.com/svn/trunk@981 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 9c3a393d 2012-01-30T20:03:32 Enabled MSVC warning 4389 : signed/unsigned mismatch. I also fixed Config.cpp so it compiles without the warning. This is because this is now a warning as error in Chromium. Review URL: https://codereview.appspot.com/5600047 git-svn-id: https://angleproject.googlecode.com/svn/trunk@980 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c6f7f9d5 2012-01-27T15:40:00 Centralize detection of instancing support. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@976 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com dce02fda 2012-01-27T15:39:51 Expose the ANGLE_instanced_arrays extension. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@975 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d644931c 2012-01-27T15:39:32 Work around a bug observed with ATI graphics cards where instanced draw calls fail when all attributes are non-instanced, by repeating the draw call. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@974 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 6c4b5e00 2012-01-27T15:39:12 Re-implement line loops by constructing a 'looping' index buffer, so it is compatible with instanced draws. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@973 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com f654945b 2012-01-27T15:39:08 Implement glDrawArraysInstanced by constructing a 'counting' index buffer since D3D9 only supports instancing on indexed draw calls. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@972 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c41a6fe3 2012-01-27T15:39:04 Ignore the 'first' parameter of glDrawArraysInstanced for instanced attributes. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@971 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2fc9f908 2012-01-27T15:39:00 Adjust the amount of streaming buffer space required for instanced attributes. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@970 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8ca9c6e7 2012-01-27T15:38:54 Set the stream source frequencies for instanced draw calls. Searches for an indexed (non-instanced) attribute to ensure it gets mapped to stream 0. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@969 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d2820bfb 2012-01-27T15:38:48 Add entry points and constants for GL_ANGLE_instanced_arrays. TRAC #19489 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@968 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org e057c5dd 2012-01-26T19:18:24 Fixed more warnings. Clang warns about missing case in enum glslang_lex.cpp so I disabled that one as well. MSVC, as Chromium is built at least, warns about things in its own STL headers in SymbolTable.cpp so disabled the warning for that file. esTransform.c had a struct that the compiler could not determine was initialized so I explicitly initialized it. Review URL: https://codereview.appspot.com/5577048 git-svn-id: https://angleproject.googlecode.com/svn/trunk@965 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org a1d8059d 2012-01-25T21:52:10 Increase MSVC warning level to 4. There are some exceptions, a subset of the exceptions used by Chromium. They didn't seem to be useful warnings. In code which we don't change much, like the preprocessor, I just suppressed the warnings in the specific files rather than changing the code. There should be no functional changes in this patch. Review URL: https://codereview.appspot.com/5570066 git-svn-id: https://angleproject.googlecode.com/svn/trunk@964 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org e0f059c5 2012-01-24T23:21:52 Remove calls to new when modifying shader constants. There were some unnecessary temporary copies we can remove, and the rest have a maximum size so we can allocate them on the stack. BUG=276 TEST= Review URL: https://codereview.appspot.com/5540071 git-svn-id: https://angleproject.googlecode.com/svn/trunk@961 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 9dc0a247 2012-01-24T21:45:37 Enable warnings as errors. I didn't do it for translator_common though because it contains automatically generated code. This is improve the signal to noise ratio in the chromium build logs. Review URL: https://codereview.appspot.com/5572055 git-svn-id: https://angleproject.googlecode.com/svn/trunk@960 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org b66a7015 2012-01-23T20:04:48 Moved RefCountObject to common so it can be used by libEGL. Review URL: https://codereview.appspot.com/5557064 git-svn-id: https://angleproject.googlecode.com/svn/trunk@956 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 551022eb 2012-01-23T19:56:54 Rename IslTextureTarget to IsInternalTextureTarget. TEXTURE_EXTERNAL is not considered an internal texture target. Review URL: https://codereview.appspot.com/5556067 git-svn-id: https://angleproject.googlecode.com/svn/trunk@955 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 86bdb824 2012-01-20T18:24:39 Adds support for EXT_occlusion_query_boolean TRAC #19360 Signed-off-by: Daniel Koch Authored-by: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@951 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2678b34b 2012-01-18T16:29:40 Changes the pointer from textures to their renderbuffer proxies to non-refcounted (2/2) TRAC #19335 Issue=271 Instead, the texture maintains an internal refcount which causes the pointer to behave kind of like a "weak" shared pointer-- its reference won't prevent the renderbuffer from being deleted, but if the renderbuffer's refcount drops to zero, the texture should set its pointer to the renderbuffer to null so that a new one can be created at the next getRenderbuffer call. Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@948 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0dc8a5ee 2012-01-18T16:29:34 Stores texture in RenderbufferTexture via a BindingPointer (1/2) TRAC #19335 Issue=271 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@947 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 6575602e 2012-01-17T21:45:38 Finished off the GLSL compiler's support for parsing shaders using OES_EGL_image_external. The GLSL to HLSL translator work is not done yet so the extension is disabled in Shader.cpp. Review URL: https://codereview.appspot.com/5530081 git-svn-id: https://angleproject.googlecode.com/svn/trunk@946 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org f289ee8d 2012-01-11T20:03:29 Allocate D3D queries from a pool for the Display. This is a workaround for an Intel bug. The crash looks like this: 0x5f816c53 [d3d9.dll + 0x00036c53] CQuery::~CQuery() 0x5f816bec [d3d9.dll + 0x00036bec] CQuery::`vector deleting destructor'(unsigned int) 0x5f7e8129 [d3d9.dll + 0x00008129] CBaseObject::~CBaseObject() 0x5f9e19c7 [libglesv2.dll + 0x000319c7] gl::Fence::`vector deleting destructor'(unsigned int) 0x5f9de78e [libglesv2.dll - context.cpp:975] gl::Context::deleteFence(unsigned int) 0x5f9e1491 [libglesv2.dll - context.cpp:198] gl::Context::~Context() 0x5f9e182f [libglesv2.dll - context.cpp:3936] glDestroyContext 0x717654ec [libegl.dll - display.cpp:749] egl::Display::destroyContext(gl::Context *) 0x7176a3da [libegl.dll - libegl.cpp:907] eglDestroyContext 0x64fbaf33 [chrome.dll - gl_context_egl.cc:75] gfx::GLContextEGL::Destroy() The vendor ID is always 8086 (Intel). Not an XP issue - it's happening on Win 7. With this change, D3D queries are only released when the display is destroyed or reset or if a very high number of D3D queries have been allocated. Tested by stepping exercising the NV_fence entry points in a debugger. Review URL: http://codereview.appspot.com/5534065 git-svn-id: https://angleproject.googlecode.com/svn/trunk@941 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org a5ddde91 2012-01-10T23:00:07 Move Context::sync to Display::sync. This is a workaround for an Intel bug. The crash looks like this: 0x5f816c53 [d3d9.dll + 0x00036c53] CQuery::~CQuery() 0x5f816bec [d3d9.dll + 0x00036bec] CQuery::`vector deleting destructor'(unsigned int) 0x5f7e8129 [d3d9.dll + 0x00008129] CBaseObject::~CBaseObject() 0x5f9e19c7 [libglesv2.dll + 0x000319c7] gl::Fence::`vector deleting destructor'(unsigned int) 0x5f9de78e [libglesv2.dll - context.cpp:975] gl::Context::deleteFence(unsigned int) 0x5f9e1491 [libglesv2.dll - context.cpp:198] gl::Context::~Context() 0x5f9e182f [libglesv2.dll - context.cpp:3936] glDestroyContext 0x717654ec [libegl.dll - display.cpp:749] egl::Display::destroyContext(gl::Context *) 0x7176a3da [libegl.dll - libegl.cpp:907] eglDestroyContext 0x64fbaf33 [chrome.dll - gl_context_egl.cc:75] gfx::GLContextEGL::Destroy() This is a crash in deleteFence but the same could happen in flush. Fix for the former to follow. The vendor ID is always 8086 (Intel). Not an XP issue - it's happening on Win 7. Tested by stepping through a call to glFinish in the debugger and ensuring that it sleeps but eventually returns. Review URL: http://codereview.appspot.com/5503094 git-svn-id: https://angleproject.googlecode.com/svn/trunk@940 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 56397df3 2011-12-22T19:39:18 Removes an unneeded GetDesc call from Clear TRAC #19330 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Authored-by: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@930 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c8d46066 2011-12-22T19:39:14 Ensure texture storage exists before retrieving serial Trac #19330 Signed-off-by: Nicolas Capens In some cases we were trying to retrieve a serial from a rendertarget texture which didn't have the storage allocated yet. This was resulting in a 0 serial which was indistinguishable from the case where context was just marked dirty and we assumed the target was up-to-date. This resulted in failing to apply the correct rendertarget and as a result some d3d clear calls were failing (picked up by debug runtime). git-svn-id: https://angleproject.googlecode.com/svn/trunk@929 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4d6c6d75 2011-12-22T19:36:50 Only allow renderable d3dformats to be flagged as rendertarget texstorage Trac #19356 Issue=273 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@928 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 2e566dc3 2011-12-22T19:36:47 rename TextureStorage renderable flag to reflect it's actual usage Trac #19356 Issue=273 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@927 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com b9aa00b2 2011-12-22T19:36:42 Refactor image renderability lookup Trac #19356 Issue=273 Signed-off-by: Nicolas Capens Based on preliminary patch from Ken Russell Images are never renderable directly, so renaming the Image::isRenderable function clarifies that we are only checking on the renderability of the format. Also factor out the lookup to a static helper function (it will be used elsewhere in the next patch) git-svn-id: https://angleproject.googlecode.com/svn/trunk@926 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d9a54f98 2011-12-22T18:32:53 Fixed gl_FragCoord.y calculation TRAC #19349 ANGLEBUG=272 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@925 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com e7289839 2011-12-16T23:30:52 Check device loss between GetData calls when blocking Trac #19246 Issue=262 Some drivers don't properly return device lost Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@924 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com df363721 2011-12-16T23:29:53 Re-enable advertising EXT_texture_storage Trac #19259 Issue=268 The problems on d3d9/winxp have been fixed. Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@923 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com ad0ca1c4 2011-12-16T23:28:52 make the renerable usage consistant and const Trac #19259 Issue=268 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@922 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 92399aa2 2011-12-16T23:28:47 Add TextureStorage::getPool method Trac #19259 Issue=268 Use it to avoid duplicate calls to getTexturePool Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@921 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 101f8697 2011-12-16T23:28:43 Let TextureStorage track the texture pool explicitly Trac #19259 Issue=268 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@920 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com f5cffc91 2011-12-16T23:28:39 Rename various mTexture variables to mTexStorage to reflect what they really are Trac #19259 Issue=268 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@919 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 63928d78 2011-12-16T23:28:34 Cache the computation of getD3DFormat Trac #19259 Issue=268 Instead of looking this up every time, we'll just compute it when the type/format changes. Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@918 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1dda3b18 2011-12-16T23:28:31 Move ConvertTextureFormatType Trac #19259 Issue=268 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@917 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 38f28cba 2011-12-16T23:28:26 Track the texture pool explicitly in the Image class Trac #19259 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@916 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1d116b42 2011-12-16T23:28:22 Fix managed texturestorage textures Trac #19259 Issue=268 managed textures need to be set on the images so they can be updated properly and to avoid the additional system memory copy of the surfaces. Also make sure track the managed state properly. Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@915 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com f71a339a 2011-12-16T23:28:18 Use the correct d3dformat for texstorage textures. Trac #19259 Issue=268 The image we were trying to get the d3dformat from hadn't been initialized yet. Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@914 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8d6252eb 2011-12-16T23:28:14 Add a static helper function to convert a GL format/type to d3dformat and call this from Image::getD3DFormat Trac #19259 Issue=268 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@913 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 5f7dc33d 2011-12-13T22:48:00 Use the correct function to determine texture pool Trac #19259 Issue=269 git-svn-id: https://angleproject.googlecode.com/svn/trunk@912 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com a5798959 2011-12-13T17:30:43 Fix more rendertarget leaks Trac #19246 Issue=262 FBO rendertargets are explicitly refcounted. Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@908 736b8ea6-26fd-11df-bfd4-992fa37f6226
vangelis@google.com 29217fad 2011-12-13T01:46:18 Stop advertizing GL_EXT_texture_storage until issue 266 is resolved. Review URL: http://codereview.appspot.com/5484055 git-svn-id: https://angleproject.googlecode.com/svn/trunk@907 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 82b28913 2011-12-12T21:01:35 Fix error reporting for lost contexts Trac #19246 Issue=262 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@906 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 7f4dee14 2011-12-07T21:14:00 Guard against releasing NULL textures. ANGLEBUG=265 TRAC #19196 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@905 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org febbea88 2011-12-07T19:10:16 Fixed leak of render target associated with ColorBuffer. Following r853, I am assuming that any render target returned by FrameBuffer::getRenderTarget has to be released. Updating the usage of getRenderTarget to reflect that. This is not reproducible in Chrome at the moment but it will be once I start rendering to pbuffers. I ran the WebGL conformance tests. No regressions or crashes. Review URL: http://codereview.appspot.com/5451110 git-svn-id: https://angleproject.googlecode.com/svn/trunk@903 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 343373ab 2011-11-29T19:42:32 Creates helper function for common subimage param checking TRAC #18802 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@901 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 21f05d75 2011-11-29T19:42:28 Adds missing parameter checks to texture functions TRAC #18802 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@900 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com f1286449 2011-11-29T19:42:23 Adds a level parameter to texture getWidth and getHeight TRAC #18802 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@899 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 102ca746 2011-11-24T22:34:14 Fix rendering for the closing line of line loops. Trac #19035 Signed-off-by: Nicolas Capens Line loops via DrawArrays were incorrect because the vertex buffer already has the vertex offset factored in. Line loops via DrawElements were incorrect because the vertex buffer was offset by the minIndex. We need to use the same minIndex when rendering the closing loop. git-svn-id: https://angleproject.googlecode.com/svn/trunk@892 736b8ea6-26fd-11df-bfd4-992fa37f6226
bsalomon@google.com 56d46abe 2011-11-23T14:53:10 Add GL_ANGLE_pack_reverse_row_order. Performs vertical flip in readPixels and may write direct to client ptr. Bug=none Test= Tested in a modified version of Chromium using canvas2D. Review URL: http://codereview.appspot.com/5373104 git-svn-id: https://angleproject.googlecode.com/svn/trunk@889 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 32b11443 2011-11-19T02:42:48 Checks level on relevant gl calls against implementation maximum. TRAC #18905 Issue=243 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@885 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 059fc15f 2011-11-18T19:26:17 Fix count of elements in buffer There can be one extra element at the end even if an entire stride doesn't fit. BUG= TEST= Review URL: http://codereview.appspot.com/5401046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@884 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 1e44645a 2011-11-16T03:56:50 Immutable textures are always mipmap complete. TRAC #18730 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@883 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 6364b350 2011-11-16T03:56:44 Split completeness tests into sampler and mipmap completeness. TRAC #18730 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@882 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 45b888ad 2011-11-16T03:56:39 Correct texture storage levels count validation. TRAC #18730 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@881 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c333699d 2011-11-14T21:15:45 Fixed vertex sampler index retrieval. TRAC #18865 ANGLEBUG=247 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@880 736b8ea6-26fd-11df-bfd4-992fa37f6226