Commit Graph

  • 06098890ab Allow derivative functions if derivative extension is enabled. I still need to add validation for "#extension GL_OES_standard_derivatives : enable". BUG=25 Review URL: http://codereview.appspot.com/1965045 alokp@chromium.org 2010-08-26 19:36:42 +00:00
  • 94a86ad8f1 Adding support for OES_standard_derivatives extension. This is not the complete implementation. Sending it to get feedback on the API. Is it OK to add extension support into TBuiltInResource? I could create a new struct for extensions but that would lead to API change. BUG=25 Review URL: http://codereview.appspot.com/1953047 alokp@chromium.org 2010-08-25 20:02:11 +00:00
  • 575e7910ff Changed glFlush to not wait until issued event is processed. apatrick@chromium.org 2010-08-25 18:07:12 +00:00
  • 58e5429861 Cleanup TType and related classes: 1. Removed unused functions 2. Removed unnecessary virtuality of functions 3. Grouped related functions together alokp@chromium.org 2010-08-24 21:40:03 +00:00
  • 1ac37d8030 Optimizes Texture::loadImageData TRAC #13046 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:21:31 +00:00
  • 1dcea9f858 Implements a special case for temporary surface creation for DXT low mip levels. TRAC #12908 The lowest mip levels for DXT textures will have dimensions < 4, so a D3D texture cannot be created to hold them offscreen directly. Instead, we must create a larger texture one of whose mip levels would be the desired dimension, and store the surface from that texture for later inclusion in the final texture. Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:21:27 +00:00
  • 0186813531 Implements compressed textures. TRAC #12714 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:21:17 +00:00
  • f5cde48355 Allocates a texture rather than an offscreen plain surface for new textures. TRAC #12908 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:21:11 +00:00
  • d36c2971e8 Advertises the GL_OES_rgb8_rgba8 extension. daniel@transgaming.com 2010-08-24 19:21:07 +00:00
  • 6397754a3c Implements support for rgb8 and rgba8 renderbuffer storage formats TRAC #12717 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:21:02 +00:00
  • 3ea20e7cbc Fixes a bug where framebuffer_multisample was not properly being added to the extension string. TRAC #12966 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:58 +00:00
  • 97446d2f49 Implements multisample resolve capability TRAC #12716 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:54 +00:00
  • d470a1b5d3 Implements multisample fragment operations TRAC #12711 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:48 +00:00
  • 1f135d86ab Implements glRenderbufferMultisampleStorage TRAC #12714 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:36 +00:00
  • 4cbc590fb5 Implements blitFramebuffer TRAC #12713 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:26 +00:00
  • ca7c008a89 Initializes renderbuffer formats for attachments to the default framebuffer. TRAC #12864 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:20 +00:00
  • a27ff1eeaf Creates separate bind points for read & write framebuffers. TRAC #12712 Signed-off-by: Nicolas Capens Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-24 19:20:11 +00:00
  • b707a3b755 Added runtime checks for GetClientRect errors. apatrick@chromium.org 2010-08-23 23:12:51 +00:00
  • 32cfaf4b48 TIntermBinary::promote() was incorrectly marking the type of result as const in some cases. The result can only be const if both operands are const. Also cleaned up the function to remove redundant/repeated checks. BUG=24 TEST=OpenGL ES 2.0 Conformance tests Review URL: http://codereview.appspot.com/1938047 alokp@chromium.org 2010-08-23 21:01:13 +00:00
  • 94e1934d37 Fixed crash on context lost. apatrick@chromium.org 2010-08-17 22:19:58 +00:00
  • b399934899 Added comment about return values of ShInitialize() and ShFinalize(). Review URL: http://codereview.appspot.com/1980041 alokp@chromium.org 2010-08-12 19:46:23 +00:00
  • 6ad6ce8d0b Fixed Display::initialize so it does not crash for devices that do not support PS 2.0. apatrick@chromium.org 2010-08-12 00:16:16 +00:00
  • c7b6eba93f Fixed warnings about deprecated conversion from string constant to char*. Submitted by timeless. BUG=18 Review URL: http://codereview.appspot.com/1936041 alokp@chromium.org 2010-08-09 22:33:53 +00:00
  • b416e70e90 Some compilers do not support standard STL allocator interface. Also removed _Charalloc function only needed by VC++6.0, which we do not support. Submitted by Eagle.Lu. BUG=19 Review URL: http://codereview.appspot.com/1913048 alokp@chromium.org 2010-08-09 22:32:56 +00:00
  • 434fdf21d5 Fix warnings about unused variables. Submitted by timeless. BUG=15 Review URL: http://codereview.appspot.com/1916046 alokp@chromium.org 2010-08-09 22:31:36 +00:00
  • bcfba4c3f3 Fix warnings about comparison/assignement between signed and unsigned types. Submitted by timeless. BUG=13 Review URL: http://codereview.appspot.com/1895051 alokp@chromium.org 2010-08-09 22:30:49 +00:00
  • 6eed5eb280 ret = yyparse(...) is dropped in PaParseStrings. Submitted by timeless. BUG=16 Review URL: http://codereview.appspot.com/1868056 alokp@chromium.org 2010-08-09 22:29:59 +00:00
  • b2dfd8ea30 Fix warnings about initialization order in the class initialization list. Submitted by timeless. BUG=14 Review URL: http://codereview.appspot.com/1850054 alokp@chromium.org 2010-08-09 22:28:19 +00:00
  • 0a57618aa9 Reject shaders that invoke functions hidden by variable or struct name. BUG=22 Review URL: http://codereview.appspot.com/1855057 alokp@chromium.org 2010-08-09 17:16:27 +00:00
  • 003e7b135a We were trying to change a const_iterator which was rightly caught by SunStudio compiler. Submitted by Eagle.Lu. BUG=19 Review URL: http://codereview.appspot.com/1879049 alokp@chromium.org 2010-08-09 17:14:46 +00:00
  • 5223af6b27 Replaced __inline with inline to make it compile with SunStudio compiler. Submitted by Eagle.Lu. BUG=19 Review URL: http://codereview.appspot.com/1910047 alokp@chromium.org 2010-08-09 17:14:09 +00:00
  • f8de41fb6b Adding separate license file for the preprocessor code and removing the ANGLE boilerplate license from those files. vangelis@google.com 2010-08-09 16:51:37 +00:00
  • 5783308ef9 Add Al and Vlad to contributors file daniel@transgaming.com 2010-08-08 04:50:02 +00:00
  • a9198d9c6f Implement EXT_texture_format_BGRA8888 and EXT_read_format_bgra Trac #13050, Issue=21 Original Author: Vladimir Vukicevic Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-08 04:49:56 +00:00
  • bc3699da7c 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 daniel@transgaming.com 2010-08-05 14:48:49 +00:00
  • 31273558e8 Fixes erroneous copy in subImage calls after failure is already detected. TRAC #13074 Also adds initializations for missed Texture members. Signed-off-by: Daniel Koch daniel@transgaming.com 2010-08-04 13:42:44 +00:00
  • 257e8d0f82 Added missing sources to build_angle.gyp. apatrick@chromium.org 2010-07-28 23:07:39 +00:00
  • 37fa3c8eee Removes Windows-style line endings from Display.cpp TRAC #12714 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-07-28 19:21:21 +00:00
  • da6e263ced Support window resizing daniel@transgaming.com 2010-07-28 19:21:18 +00:00
  • 9ecb9f9d50 Sharing for buffer, texture and renderbuffer objects. daniel@transgaming.com 2010-07-28 19:21:12 +00:00
  • 0d25b005e3 Create shared contexts. daniel@transgaming.com 2010-07-28 19:21:07 +00:00
  • bbc57796e8 Checks completeness of framebuffer before read operations. TRAC #12565 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-07-28 19:21:05 +00:00
  • 0190f84563 Fixes FBO completeness check daniel@transgaming.com 2010-07-28 19:21:02 +00:00
  • da13f3e902 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 daniel@transgaming.com 2010-07-28 19:20:56 +00:00
  • 9930531afd Remove wrong and unnecessary check attribute check. daniel@transgaming.com 2010-07-28 19:20:54 +00:00
  • cdacc8e271 Implement GL_OES_packed_depth_stencil TRAC #12336 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-07-28 19:20:50 +00:00
  • 162267d63a fix spacing issue due to manual merge daniel@transgaming.com 2010-07-28 19:20:48 +00:00
  • 4f921eb4e6 Renamed dx_Window to dx_Viewport TRAC #11594 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-07-28 19:20:44 +00:00
  • be5a0867c4 Implement gl_PointCoord on SM3 hardware TRAC #11594 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-07-28 19:20:37 +00:00
  • b75e523ab1 Use TestCooperativeLevel instead of ValidateDevice to check for device loss. daniel@transgaming.com 2010-07-28 19:13:47 +00:00
  • 34b99cdf6c De-allocate memory in ShFinalize(). There still seems to be a bug here if the translator is used in a multi-threaded environment. It seems memory local to only one thread is being deallocated - the thread from which ShFinalize() is called. I will look into it closely in the next CL. Review URL: http://codereview.appspot.com/1878044 alokp@chromium.org 2010-07-27 18:37:55 +00:00
  • 5eb4609cd0 Encapsulate expressions with ternary operators with brackets. This preserves the order of precedence when ternary expressions are used in a compound expression. BUG=20 Review URL: http://codereview.appspot.com/1894041 alokp@chromium.org 2010-07-26 18:15:21 +00:00
  • e4249f0217 Refactored the way symbol tables are initialized and stored. This was done in response to the addition of EShSpec. Symbol table entries depend on three things - language, spec (not now but may eventually), and built-in resources. We used to build two global symbol-tables - one for each language. During each compile, one of the symbol table was copied and resource-specific stuff was added. I have moved the symbol table to TCompiler that gets initilized when compiler is created and reused for each compile. This makes it much cleaner and extensible in case a spec requires special entries to be added to the symbol table. alokp@chromium.org 2010-07-26 18:13:52 +00:00
  • 6db8cab4b8 ReadPixels recovers from device lost error. apatrick@chromium.org 2010-07-22 20:39:50 +00:00
  • c54bf507cd Further cleanup of ShaderLang.h. Removed redundant/unused macros and enum fields. Review URL: http://codereview.appspot.com/1842046 alokp@chromium.org 2010-07-22 16:49:09 +00:00
  • 774d70630a Cleaned up translator API. Deleted unsupported dead code. BUG=9 Review URL: http://codereview.appspot.com/1665050 alokp@chromium.org 2010-07-21 18:55:45 +00:00
  • a300988e45 Check for reserved prefixes (gl_, webgl_, and _webgl_) in struct and field names. GLES2 and WebGL both require this for all identifiers - variable, function, struct, and field names. ANGLE was only validating variable and function names. BUG=11 Review URL: http://codereview.appspot.com/1856046 alokp@chromium.org 2010-07-21 18:54:37 +00:00
  • 613ef31a9f Added checks for webgl_ and _webgl_ reserved identifiers. This currently only checks variable and function names. Struct names and field names will be added in the another CL. BUG=11 Review URL: http://codereview.appspot.com/1674050 alokp@chromium.org 2010-07-21 18:54:22 +00:00
  • bad6c2a42b Added <stdio.h> include for sprintf. It broke Chrome downstream when I bumped the rev. apatrick@chromium.org 2010-07-20 20:19:51 +00:00
  • 29cd91af30 Added an option for specifying language specification in preparation for supporting WebGL in addition to GLES2. This CL just replaces unused debugOptions variable with EShSpec variable. BUG=11 Review URL: http://codereview.appspot.com/1692051 alokp@chromium.org 2010-07-16 19:30:45 +00:00
  • 01b666f225 Fixed compilation error on mingw. Used _MSC_VER for MSVC-specific code instead of WIN32. Recieved patch from cjacek. BUG=12 Review URL: http://codereview.appspot.com/1694049 alokp@chromium.org 2010-07-16 19:27:45 +00:00
  • 9abe956ea6 Removed the precision check creating spurious error messages TRAC #12641 The precision of compiler temporaries doesn't require checking, and would be hard to determine at parse time. We only require correct precisions for declarations, which is checked separately. So we can safely remove the check for binary operations. daniel@transgaming.com 2010-06-24 13:02:21 +00:00
  • c6f5340070 Clear must ignore buffers that are not present. daniel@transgaming.com 2010-06-24 13:02:19 +00:00
  • 4c03fa69a3 Fix NPOT completeness rule. daniel@transgaming.com 2010-06-24 13:02:16 +00:00
  • 353569a9ca Eliminates redundant calls to GetDeviceCaps TRAC #12283 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-06-24 13:02:12 +00:00
  • 8187fa8f13 Added some includes. apatrick@chromium.org 2010-06-15 22:09:28 +00:00
  • cba04990ec Added parentheses around a few operators so that if they are used in a compound statement, order of operations is preserved. BUG=5 TEST=OpenGL ES 2.0 conformance tests. Review URL: http://codereview.appspot.com/1691041 alokp@chromium.org 2010-06-14 20:36:41 +00:00
  • 334aa1f359 Handled case where selection nodes that use ternary operators are part of a sequence. Usually they are part of an assignment. BUG=4 TEST=OpenGL ES 2.0 conformance tests, specifically operators test. Review URL: http://codereview.appspot.com/1643043 alokp@chromium.org 2010-06-11 23:38:29 +00:00
  • 7d3849bd7c Fix build when a project patch contains spaces daniel@transgaming.com 2010-06-08 16:07:55 +00:00
  • 306cc952a0 Workaround for drivers that apparently don't disable instancing when we ask. daniel@transgaming.com 2010-06-08 16:07:47 +00:00
  • 1c233ff444 Increase the number of supported attribs (12) and texture units (16) TRAC #12313 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-06-08 14:13:00 +00:00
  • b0a1dcccf6 Fix regression due to float printing changes Trac #12501 daniel@transgaming.com 2010-06-07 02:06:26 +00:00
  • fce644e28e Don't rely on (potentially) unsupported vertex attribute types. daniel@transgaming.com 2010-06-07 02:06:20 +00:00
  • a3bbfd43fe Fixes double-decoration when getUniformLocation is called from defineUniform. TRAC #12437 daniel@transgaming.com 2010-06-07 02:06:09 +00:00
  • 8f05d1aa87 Save D3D state before altering it for masked clears TRAC #12380 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-06-07 02:06:03 +00:00
  • 9c212cae5f Fixed warnings in release build. Trace was not defined properly. Review URL: http://codereview.appspot.com/1484041 alokp@chromium.org 2010-06-02 22:53:00 +00:00
  • 84a9628864 Moved windows-only targets into OS==win conditional. Review URL: http://codereview.appspot.com/1473043 alokp@chromium.org 2010-06-02 22:26:52 +00:00
  • dd7948b3ae According to spec, the stencil ref is clamped to the range [0,2^s-1] daniel@transgaming.com 2010-06-02 16:12:34 +00:00
  • 91b7232040 Removed the dependency of compiler on common. This is done to make compiler self-sufficient so that it is easier to consume by external developers. I tried to replace all instances of assert by simply redefining assert(x) to ASSERT(x), but was getting a lot of compile errors. I still need to investigate that. Review URL: http://codereview.appspot.com/1461041 alokp@chromium.org 2010-06-02 15:50:56 +00:00
  • 4e4facd4a1 Refactored InfoSink. I have replaced most instances of sprintf with std::ostringstream to make it safer. I have made sure that everything still compiles and passes conformance tests. Review URL: http://codereview.appspot.com/1391041 alokp@chromium.org 2010-06-02 15:21:22 +00:00
  • e37888d153 Add support for various egl Get methods Trac #12375 This patch stores the current READ/DRAW and display in the context and allows these eglGets to work. daniel@transgaming.com 2010-05-27 16:45:46 +00:00
  • 5ac5dd25ae Correct the eglMakeCurrent return value on lost context (syntax) TRAC #11233 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-05-27 15:02:27 +00:00
  • 561637aed1 Avoid using instancing on hardware where it does not work well enough. daniel@transgaming.com 2010-05-27 15:02:21 +00:00
  • 13b2dd874a Used "not" instead of "!" for vectors. Review URL: http://codereview.appspot.com/1324041 alokp@chromium.org 2010-05-26 18:35:23 +00:00
  • d88b7736fc Do not write extraneous semi-colons - some glsl compilers are do not like that even though it is so easy to ignore. Review URL: http://codereview.appspot.com/1301041 alokp@chromium.org 2010-05-26 15:13:14 +00:00
  • 90033b9eb5 ShInitialize/ShFinalize is designed to be called once per process, or it would crash at random locations. I changed ShFinalize() to properly cleanup and reset global variables so that they can be called multiple times. I think that the compiler setup is much more complicated than it needs to be. It unnecessarily uses global variables. A custom pool allocator is overkill too. Review URL: http://codereview.appspot.com/1238045 alokp@chromium.org 2010-05-24 15:02:43 +00:00
  • 866f318d05 TextureColorbufferProxy must query the texture to get the latest width & height. daniel@transgaming.com 2010-05-20 19:28:22 +00:00
  • 81655a720e Use instancing for non-array vertex attributes. daniel@transgaming.com 2010-05-20 19:18:17 +00:00
  • 8c9ff193e3 Add Jim Hauxwell as a contributor daniel@transgaming.com 2010-05-20 19:18:11 +00:00
  • b28a23bd8b Fixes query for active texture TRAC #12374 daniel@transgaming.com 2010-05-20 19:18:06 +00:00
  • c6c6f0272d Report an EGL_CONTEXT_LOST error on D3DERR_DEVICELOST Trac #11233 Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch daniel@transgaming.com 2010-05-20 19:18:00 +00:00
  • a2a95e7c9b Implement scoped structure declarations TRAC# 12110 Signed-off-by: Shannon Woods Singed-off-by: Daniel Koch daniel@transgaming.com 2010-05-20 19:17:55 +00:00
  • 8026c67712 Fixed struct name lexing TRAC #12110 Unlike built-in types, structs can be redefined (in a different scope). Signed-off-by: Shannon Woods Signed-off-by: Daniel Koch daniel@transgaming.com 2010-05-20 19:17:48 +00:00
  • 838bceaee2 Detect draws that would read outside the vertex buffer. daniel@transgaming.com 2010-05-20 19:17:42 +00:00
  • 8b9f4cc8d0 Fix FORCE_REF_RAST definition TRAC #12343 Signed-off-by: Daniel Koch daniel@transgaming.com 2010-05-20 19:17:35 +00:00
  • 741a588e70 Add defines to enable the reference rasterizer TRAC #12343 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-05-20 19:17:29 +00:00
  • 89b054348c Fixed compile error with gcc 4.4. TBR=gman@chromium.org Review URL: http://codereview.appspot.com/1199047 alokp@chromium.org 2010-05-19 20:13:10 +00:00
  • 1bcc3fd599 Patching changes from thestig@chromium.org for fixing ANGLE build with gcc 4.4 on Karmic. The original CL is here: http://codereview.appspot.com/1255042/show The only changes I have maded is moved the inclusion of stdint.h from PoolAlloc.h to PoolAlloc.cpp with #ifndef _MSC_VER guard. Review URL: http://codereview.appspot.com/1220044 alokp@chromium.org 2010-05-19 17:08:44 +00:00
  • 5d4c28f9d5 Removes check for framebuffer == 0 in glRenderbufferStorage TRAC #12346 Signed-off-by: Andrew Lewycky Signed-off-by: Daniel Koch daniel@transgaming.com 2010-05-19 07:14:19 +00:00
  • 178adff757 Give sorted configs a unique ID without changing the original set TRAC #12323 This fixes building on Visual C++ 2010, which has const iterators for STL sets as specified by C++0x. Signed-off-by: Shannon Woods Singed-off-by: Daniel Koch daniel@transgaming.com 2010-05-18 18:52:04 +00:00