src/libGLESv2/Context.cpp


Log

Author Commit Date CI Message
daniel@transgaming.com 29ab9525 2012-08-27T16:25:37 Minor GCC fixes - Added missing typename keyword - Use proper filenames includes (this matters when cross compiling on case sensitive OSes) - Added <string> include where GCC requires it - Avoid collision between enum variables and template params Issue=358 Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@1261 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 909f21cc 2012-08-17T20:06:02 Reset shaders to null in makeCurrent. Review URL: https://codereview.appspot.com/6460100 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1253 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 989c1c85 2012-07-24T18:40:38 Make ProgramBinary a refcount object and use Binding pointers to maintain it's lifetime on context and program. Trac #21270 Bug=351 Signed-off-by: Nicolas Capens This fixes the underlying bug since it allows the context to keep the program binary alive, after a relink has occurred. git-svn-id: https://angleproject.googlecode.com/svn/trunk@1242 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 12394cf7 2012-07-24T18:37:59 Install new program binary when current program is successfully relinked or reloaded Trac #21270 Bug=351 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1240 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 95d29424 2012-07-24T18:36:10 redirect the LinkProgram and ProgramBinary calls through the context. Trac #21270 Bug=351 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1238 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 834af913 2012-07-24T18:35:17 Explicitly track the current program binary instead of just caching it. Trac #21270 Bug=351 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1237 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 7f3bfe13 2012-07-24T18:34:39 Don't erase the cached program binary on deletion. Trac #21270 Bug=351 Signed-off-by: Nicolas Capens This is unnecessary since the current program can never be deleted, only flagged for deletion. git-svn-id: https://angleproject.googlecode.com/svn/trunk@1236 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 62a2846c 2012-07-24T18:33:59 Cache the current program binary instead of the current program. Trac #21270 Bug=351 Signed-off-by: Nicolas Capens Everywhere we used the currentProgram it was immediately used to get the program's binary. git-svn-id: https://angleproject.googlecode.com/svn/trunk@1235 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com e6af4f93 2012-07-24T18:31:31 Use the ProgramBinary's serial to track changed D3D9 shaders instead of the Program's Trac #21270 Bug=351 Signed-off-by: Nicolas Capens This is necessary since the shaders can change every time a new ProgramBinary is created (eg when re-linking or loading a new binary). git-svn-id: https://angleproject.googlecode.com/svn/trunk@1233 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 5ae3ccc3 2012-07-24T18:29:38 Pass the programBinary directly to applyDeclaration Trac #21270 Bug=351 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1231 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 68715287 2012-07-12T23:28:41 Scale up non-multiple-of-4 dxt textures D3D doesn't support DXT textures that aren't a multiple of 4 in size, so multiply the sizes by 2 or 4 so they work. Then ensure sampler parameters are set up correctly so they don't sample the unuploaded miplevels. BUG=https://code.google.com/p/angleproject/issues/detail?id=237 TEST= Review URL: https://codereview.appspot.com/6287045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1222 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 07ab841a 2012-07-12T15:17:09 Implement Anisotropic Texture filtering support Bug=297 Authored-by: Conor Dickinson, Cloud Party, Inc. Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@1219 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 144f2804 2012-07-12T01:42:34 Enable OES_get_program_binary. Review URL: https://codereview.appspot.com/6349053 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1216 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 13be3e43 2012-07-04T19:16:24 Increase the maximum point size to what is reported by Direct3D. TRAC #21121 Issue=345,305 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@1191 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 253b8d20 2012-06-22T19:27:21 Refactor program info log out of ProgramBinary and in to Program. Tested by setting breakpoint in esLoadProgram with the broken program. Review URL: https://codereview.appspot.com/6305114 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1164 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 9616e583 2012-06-22T18:27:01 Merge no-flip-rows r1142 to trunk. Review URL: https://codereview.appspot.com/6304052 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1162 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org 3ce8dbcd 2012-06-08T17:52:30 Add placeholder entry points for GL_OES_get_program_binary. Review URL: https://codereview.appspot.com/6279054 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1146 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org ea09f9b4 2012-06-08T00:45:32 Move ProgramBinary into new file. Review URL: https://codereview.appspot.com/6299058 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1144 736b8ea6-26fd-11df-bfd4-992fa37f6226
apatrick@chromium.org e2a59bba 2012-06-07T21:09:53 Refactor Program into Program and ProgramBinary. Program manages the state and lifetime of the program object. ProgramBinary holds the linked program and the code to do the linking. There should be no functional change. WebGL conformance tests did not regress. Review URL: https://codereview.appspot.com/6267047 git-svn-id: https://angleproject.googlecode.com/svn/trunk@1143 736b8ea6-26fd-11df-bfd4-992fa37f6226
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 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 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 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
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 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 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 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
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
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 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 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
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 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 b7915a55 2011-11-12T03:14:20 Add the ReadnPixelsEXT command Trac #18608 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@865 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 97412f71 2011-11-11T04:19:07 Advertise GL_ANGLE_texture_usage. TRAC #18732 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@863 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0bd1f2f6 2011-11-11T04:19:03 Advertise GL_EXT_texture_storage. TRAC #18730 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@862 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com fbc39524 2011-11-11T04:10:28 Issue render target serials per texture storage. TRAC #18730 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@855 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8747f18f 2011-11-09T17:50:38 Advertise robustness extension strings. Trac #18607 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@850 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4ff960d9 2011-11-09T17:47:09 Implemented context creation with reset notification. TRAC #18607 Signed-off-by: Daniel Koch Authors: Shannon Woods, Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@848 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 17f548cb 2011-11-09T17:47:02 Implemented reset status. TRAC #18607 Signed-off-by: Daniel Koch Authors: Shannon Woods, Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@847 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 09fcc9fe 2011-11-09T17:46:47 Notify the display of a lost device and mark all contexts lost. TRAC #18606 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@845 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 6f5c5fc0 2011-11-09T17:46:39 Check for all device lost errors. TRAC #18606 Signed-off-by: Daniel Koch Author: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@844 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d14558a2 2011-11-09T17:46:18 Separate Colorbuffer into storage and texture variants, implementing a common interface. TRAC #16284 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@840 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com bbeffbb6 2011-11-09T17:46:11 Be more explicit about floating-point format support. TRAC #16284 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@839 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0da803be 2011-11-09T17:44:58 Refactored texture dirtiness. TRAC #18714 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@824 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 241e70de 2011-11-03T23:07:05 Resend viewport on render target change. The viewport is reset upon SetRenderTarget, so make sure to do SetViewport again. BUG= TEST= Review URL: http://codereview.appspot.com/5334048 git-svn-id: https://angleproject.googlecode.com/svn/trunk@812 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c5a7b690 2011-10-26T02:45:44 Fix compilation due to merge issue. Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@808 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0d86aa7b 2011-10-26T02:35:10 Implement glFinish using event queries. ANGLEBUG=232 TRAC #18650 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@807 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c941e25b 2011-10-26T02:32:31 Eliminate getDisplay() and getDevice() calls within the Context. TRAC #18399 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@805 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org b6e7222c 2011-10-18T23:01:46 Avoid iterating over unused samplers. Keep track of the maximum used sampler to avoid expensive iterations in applyTextures and validateSamplers. BUG= TEST=webgl conformance tests Review URL: http://codereview.appspot.com/5246061 git-svn-id: https://angleproject.googlecode.com/svn/trunk@795 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 040c4db3 2011-10-13T21:35:52 Cache currently-bound draw buffer. Avoids a hash table lookup BUG= TEST=webgl conformance tests Review URL: http://codereview.appspot.com/5261042 git-svn-id: https://angleproject.googlecode.com/svn/trunk@794 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 54f59ef8 2011-10-12T17:03:34 Don't reupload DX uniforms unless necessary Makes Donuts NaCl test go from 14->16 fps. BUG= TEST=webgl conformance tests Review URL: http://codereview.appspot.com/5233056 git-svn-id: https://angleproject.googlecode.com/svn/trunk@793 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 8b3c1afb 2011-10-12T01:21:41 Improve performance of applyRenderTarget and applyTextures Get rid of unnecessary GetSurfaceLevel/Release calls, move invariants out of the applyTextures loop, and fix the if in getSemanticIndex so we can avoid calling getMaximumCombinedTextureImageUnits. Gets donuts NaCl demo from 14->16 fps. BUG= TEST=webgl conformance tests Review URL: http://codereview.appspot.com/5248057 git-svn-id: https://angleproject.googlecode.com/svn/trunk@787 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org c6209856 2011-10-07T15:19:26 Cache the current program pointer Hash table lookups are somewhat expensive, so cache a pointer to the current program for on a context. This gains about 3 fps (from 58) on a Native Client demo. BUG= TEST=webgl conformance tests Review URL: http://codereview.appspot.com/5206042 git-svn-id: https://angleproject.googlecode.com/svn/trunk@786 736b8ea6-26fd-11df-bfd4-992fa37f6226
zmo@google.com a574f78f 2011-10-03T21:45:23 Add an extension for querying translated HLSL shader source. Review URL: http://codereview.appspot.com/5149046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@780 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 8440e3f0 2011-09-26T18:25:12 Enumerate GL extensions in sorted order Trac #18320 Sort order is OES, EXT, vendor Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@767 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 23c9e315 2011-09-21T22:16:44 Save stream source 0 in stateblock when doing masked color clear. BUG=214 TEST=webgl conformance tests Review URL: http://codereview.appspot.com/5085046 git-svn-id: https://angleproject.googlecode.com/svn/trunk@762 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org d8f3faad 2011-09-02T01:10:47 Avoid resending lots of D3D state This change uses trivial caching to determines whether to reset shaders, the viewport, and the currently set vertex declaration. It also caches the render target desc to avoid rereading that. Serial numbers are added to vertex and index buffers, so resending those can be avoided. These changes can give a big speedup (30% has been measured) on simple content, particularly when used directly or through pepper/native client. BUG= TEST=bunch of pages using webgl Review URL: http://codereview.appspot.com/4964057 git-svn-id: https://angleproject.googlecode.com/svn/trunk@743 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com c23ff643 2011-08-16T20:28:45 Implement more detailed GetString(GL_RENDERER) Trac #17815 Issue=161 Signed-off-by: Shannon Woods git-svn-id: https://angleproject.googlecode.com/svn/trunk@733 736b8ea6-26fd-11df-bfd4-992fa37f6226
gman@chromium.org 50c526d2 2011-08-10T05:19:44 Add support for DXT3 and DXT5 TEST=none BUG=none Review URL: http://codereview.appspot.com/4809068 git-svn-id: https://angleproject.googlecode.com/svn/trunk@721 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 97b12417 2011-08-09T13:40:28 Catch all CreateOffscreenPlainSurface errors in readPixels Issue=194 TRAC #17748 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@719 736b8ea6-26fd-11df-bfd4-992fa37f6226
kbr@chromium.org 1a2cd269 2011-07-08T17:30:18 Changed two assertions to explicit tests, and added an error code to those checked during ReadPixels. These changes are needed to avoid having ANGLE assert in debug builds when running WebGL test cases which provoke a GPU reset. BUG=none TEST=slow-shader-example and lots-of-polys-example in WebGL test suite Review URL: http://codereview.appspot.com/4684042 git-svn-id: https://angleproject.googlecode.com/svn/trunk@703 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 03208d5d 2011-06-15T01:15:24 Attempt to ensure pipeline flush on rendertarget change Some ATI cards appear not to flush the pipeline correctly, causing textures not to pick up newly-drawn contexts, so do an extra no-op draw when necessary. BUG=169 TEST=chromium on hulu.com Review URL: http://codereview.appspot.com/4576051 git-svn-id: https://angleproject.googlecode.com/svn/trunk@693 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 2c199b17 2011-06-13T22:20:06 Set max vertex correctly when drawing closing line We were setting the max vertex way too low, causing AMD cards to draw the line with an incorrect vertex. BUG= TEST=enable "Composited render layer borders" in chromium Review URL: http://codereview.appspot.com/4588042 git-svn-id: https://angleproject.googlecode.com/svn/trunk@691 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 3203c108 2011-06-08T12:41:32 Fix multi-sample state management. Issue=160 TRAC #16817 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@681 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4f9ef0d6 2011-05-30T23:51:19 Implemented OES_texture_npot support. TRAC #16871 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@661 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 18b7b5b5 2011-05-17T18:34:18 Improve robustness of Context::finish and flush Trac #16690 Signed-off-by: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@652 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com dfd57020 2011-05-11T15:37:25 Fix compilation warnings. Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@645 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 9ba680a7 2011-05-11T15:37:11 Comment some (vertex) texture lookup functionality. Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@643 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com f494c9ca 2011-05-11T15:37:05 Validate the sampler uniform against the number of (combined) texture image units. Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@642 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 3f74c7a7 2011-05-11T15:36:51 Correct the sizes of the (combined) texture unit arrays for VTF. Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@640 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com d4a35179 2011-05-11T15:36:45 Apply vertex textures and sampler states to the D3D9 device. Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@639 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0e64dd6d 2011-05-11T15:36:37 Rename SamplerType to TextureType (refactoring). Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@638 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com af29cac9 2011-05-11T15:36:31 Report the VTF texture unit limits. Issue=95 TRAC #16568 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@637 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 317887f2 2011-05-11T15:26:12 Fix depth test state management. TRAC #16655 Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@634 736b8ea6-26fd-11df-bfd4-992fa37f6226
jbauman@chromium.org 399c35f9 2011-04-28T23:19:51 Don't constantly recreate index buffers. Recreating index buffers for closing loops can take a long time, so use a streaming index buffer instead. BUG= TEST= Review URL: http://codereview.appspot.com/4438080 git-svn-id: https://angleproject.googlecode.com/svn/trunk@625 736b8ea6-26fd-11df-bfd4-992fa37f6226
benvanik@google.com 1a23334f 2011-04-28T19:44:39 Unifying resource handle allocation code with an allocator optimized for O(1) allocs/releases. Issue=143 Signed-off-by: Daniel Koch git-svn-id: https://angleproject.googlecode.com/svn/trunk@623 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 09c2c1ac 2011-04-13T14:57:16 Move the vertex declaration cache to a helper class. TRAC #14871 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@613 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com baa7451e 2011-04-13T14:56:47 Eliminate lookupAttributeMapping. TRAC #14871 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id: https://angleproject.googlecode.com/svn/trunk@612 736b8ea6-26fd-11df-bfd4-992fa37f6226
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