kc3-lang/angle/src/libGLESv2

Branch :


Log

Author Commit Date CI Message
32d508e2 2014-02-11 09:39:48 Fix checking for a NULL pointer after using the pointer. Change-Id: I0ead14916ec677c97afb53f4c31a903e71fbc70f Reviewed-on: https://chromium-review.googlesource.com/185862 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
2a20562f 2014-02-12 10:41:24 Fix depth texture validation in ES2 contexts. We were checking for extra conditions that apply to ES3 within all ES2 contexts, causing the webgl depth texture conformance test to fail. BUG=angle:550 Change-Id: Iae9a4880b9efc6be8c6857bce27a47d42fecc23a Reviewed-on: https://chromium-review.googlesource.com/186122 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
7ea42a55 2014-02-10 12:49:15 Move ShaderCache.h to the d3d directory. Change-Id: I56e0f5ff11cebd8b9415081b930a804dcce9530c Reviewed-on: https://chromium-review.googlesource.com/185566 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
0bf3a982 2014-02-11 09:40:48 Fix variable being used to initialize itself. Change-Id: Ied10d866627485c6cd3eb09e23c14937efc465f4 Reviewed-on: https://chromium-review.googlesource.com/185864 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
a4de2657 2014-02-11 09:39:20 Mark destructors of Surface and Context as virtual. Change-Id: If09d621cc249754caa57b057f76ff84726c18265 Reviewed-on: https://chromium-review.googlesource.com/185861 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
49f9a20d 2014-02-03 11:58:11 Add TransformFeedback object. Change-Id: I1f836575824ff9df17fe3832997f06acc7464746 Reviewed-on: https://chromium-review.googlesource.com/185032 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
1cd1b213 2014-02-11 09:42:27 Fix wrong variable being compared. Change-Id: I83b68286b6f3dd369081cb2188af27c86b3de6eb Reviewed-on: https://chromium-review.googlesource.com/185865 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
cbf727ae 2014-02-10 12:50:45 Remove references to D3D formats in the Texture class. Change-Id: I67add42cc69ec372840c67656bd2c77c623b23d0 Reviewed-on: https://chromium-review.googlesource.com/185567 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
03ef7406 2014-02-11 09:40:20 Fix comparing blend states with the wrong structure size. Change-Id: I0e4c79cb7eaacf5403203b7b65094a54405ad47a Reviewed-on: https://chromium-review.googlesource.com/185863 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
37dde692 2014-01-31 16:34:54 Add support for transform feedback queries. Change-Id: I0aab43b146f87259898db57acb9f74fdbfdb1b96 Reviewed-on: https://chromium-review.googlesource.com/184580 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
0550d038 2014-01-30 11:29:07 Implement GL_RASTERIZER_DISCARD. BUG=angle:498 Change-Id: Ib60c39e206003ae67c93769e35f7f9ef790ce9f4 Reviewed-on: https://chromium-review.googlesource.com/184396 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
a5e44c92 2014-02-04 16:04:15 Relax alignment restrictions to allow more direct storage. Our restriction to 4-byte alignments caused us to always convert formats like R8 or R16, or R8G8 instead of allowing D3D to handle these formats naturally. From experimentation the proper rule seems to be "4-bytes, unless the vertex format is 1- or 2-byte size." I couldn't find supporting documentation on MSDN, but it seems common sense. Change-Id: I9e38fe86790e34024d1ae912a809a3d3cdc02ccf Reviewed-on: https://chromium-review.googlesource.com/184523 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
a5d67475 2014-02-04 16:04:13 Remove VertexBuffer::requiresConversion. Since we now have Renderer methods to query formats for vertex inputs, we can get rid of the remaining calls to VertexBuffer which we used to query properties of vertex formats. Change-Id: I9e57d1d9bf80296aef271877fdd97a16d29114af Reviewed-on: https://chromium-review.googlesource.com/184522 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
95ffb868 2014-01-29 09:26:59 Add vertex format queries to Renderer. With the new support for vertex formats living in the format utils, we can use the Renderer class to query vertex properties instead of the VertexBuffer class. Change-Id: Id76bd4dbf63855016faccef703521887f50da3b9 Reviewed-on: https://chromium-review.googlesource.com/184521 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
80177879 2014-02-04 16:04:10 Move D3D9 vertex format tables to formatutils9. Vertex format information is useful for querying format properties with the new vertex translation logic with dynamic shaders. Change-Id: I1935c75f1e3920dc1d4a364a2d6968c82692e476 Reviewed-on: https://chromium-review.googlesource.com/184520 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
7ab02faf 2014-02-04 16:04:08 Add D3D11 vertex format tables to our format utils. Moving the vertex format information to a globally accessible helper file makes them available for the dynamic shaders logic. Change-Id: I67d6280c0603d9c601ca504751c8905677c2426f Reviewed-on: https://chromium-review.googlesource.com/184399 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
3078d0f7 2014-02-04 16:04:06 Add VertexFormat internal struct to represent vertex inputs. A VertexFormat is similar to a simplified VertexAttribute, without extra unncessary data. VertexFormats will be useful for GPU vertex conversions with dynamic shader compilation. Change-Id: I4e60e0a12d5f081fb52d95c8977c43d481b33bff Reviewed-on: https://chromium-review.googlesource.com/184398 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
8ff21aea 2014-02-04 16:04:05 Move storage for uniform blocks to the program binary. With dynamic shaders we may have multiple shader executables per program binary. We must store the uniforms outside the executable, in the program binary, to be consistent between variations. Change-Id: I1b29a5d78c72dede8562d4878569b609536ba074 Reviewed-on: https://chromium-review.googlesource.com/183586 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
c47a678a 2014-02-04 16:04:03 Move the storage for uniform blocks to its own class. With dynamic shaders we may have multiple shader executables per program binary. We must store the uniforms outside the executable, in the program binary, to be consistent between variations. Change-Id: I1bec83dfb83ee9bb422448b157338a46e8e7ba56 Reviewed-on: https://chromium-review.googlesource.com/183585 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
ecc8b6f4 2014-01-30 10:44:23 Refactor BufferStorage11. In preparation for transform feedback, BufferStorage11 needs to be able to handle a non-staging buffer being updated. Each D3D11 buffer now has an incrementing data revision associated with it so the most up-to-date buffer is always known. Staging buffers are now represented like any other DirectBuffer. Change-Id: I6e881867cb2bd02d600213d08cce3ebba316c525 Reviewed-on: https://chromium-review.googlesource.com/184395 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
7993190b 2014-02-03 14:29:42 Fix wrong allocator being used for sampler deletion. Change-Id: I5e5aca5cda2bf1a96db05d594c64970ebf54fd29 Reviewed-on: https://chromium-review.googlesource.com/184572 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
8d6a0024 2014-01-31 16:38:31 Fixed missing break statement. Change-Id: I83e3091243be442eafa4d16e4a4ce247a326c493 Reviewed-on: https://chromium-review.googlesource.com/184570 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
f8912c50 2014-01-30 10:12:03 Refactor buffer existance check into Buffer::invalidateStaticData. Change-Id: I28a7654d152865c236831636f00554a71784667b Reviewed-on: https://chromium-review.googlesource.com/184394 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
826f3d30 2014-01-29 09:26:49 Add a GetComponentType method to query a DXGI format. Also add a few missing DXGI formats related to vertex inputs. Change-Id: Ia39234a164000d11eef3806ba4f06b6426f1cbb7 Reviewed-on: https://chromium-review.googlesource.com/183584 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
9eeecfc2 2014-01-29 09:26:48 Split DXGI format info to a GL mapping and info block. The GL mapping depends on context client version (for certain depth textures), but the DXGI base format info is consistent across versions. Also add DXGI component type information to the table, and add a few missing formats related to vertex inputs. Change-Id: I2d1a8ca92b1cb39f4592d94d7d435ae0ada1de65 Reviewed-on: https://chromium-review.googlesource.com/183583 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
6246dc8f 2014-01-29 09:26:47 Track dirty D3D shaders instead of program serial. With dynamic shaders, we can have multiple vertex shaders in one program binary. Hence the binary serial by itself isn't enough to determine when we need to apply new shaders to D3D. Change-Id: I5a8b8616d353b506790ffc809e2d459bfc2b831d Reviewed-on: https://chromium-review.googlesource.com/184370 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
648c9683 2014-01-21 16:50:58 Minor optimizations to texture functions. By shuffling some parameters and calls around we can reduce the number of function calls we run for texture operations. Change-Id: If6d14cb6dff668cdfcb2f1fe6705e0d488dbc03f Reviewed-on: https://chromium-review.googlesource.com/183582 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
3810bee3 2014-01-21 16:47:12 Add the missing GL_DEPTH enum to the fbo attachment query. This enum is only availabe in GLES 3. We were failing a dEQP state query test (fbo.draw_framebuffer_default_framebuffer) Change-Id: I4cfb07b8597899561b8cc7956a9eb4cd4b0a99a8 Reviewed-on: https://chromium-review.googlesource.com/181782 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
83217796 2014-01-16 09:52:38 Remove system.h. The gyp files already define NOMINMAX and WIN32_LEAN_AND_MEAN. windows.h is also included via the D3D includes. This ends up speeding up the build process significantly by not having windows.h included in nearly every file. Also fixes issues on non-windows systems by not having stdarg.h included in debug.cpp. Change-Id: Id32d9aac37a5a29df832a062dd8024302a798a1c Reviewed-on: https://chromium-review.googlesource.com/183251 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
ab9d82cd 2014-01-21 16:38:14 Fix FramebufferRenderbuffer validation. We were not checking for an invalid renderbuffer when attaching to a framebuffer. Change-Id: Ie29dca1833cc8c2b974f746d51dbee848f52a741 Reviewed-on: https://chromium-review.googlesource.com/181558 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
d7460c7e 2014-01-21 16:38:14 Fix gl::ValidTextureTarget to work on all enum values. Change-Id: I347583ae1adcaaae9feeb1276f6150ceb8739885 Reviewed-on: https://chromium-review.googlesource.com/181557 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
1fc7e2c5 2014-01-21 16:47:10 Refactor validation of FramebufferRenderbuffer. Consolidate a lot of duplicated code into helper methods. Also move GetTargetTexture to the context class. Change-Id: I8e3990a5e3c1976cb533941d0a0946466accec30 Reviewed-on: https://chromium-review.googlesource.com/181556 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
ec91cd32 2014-01-21 16:38:12 Clamp stencil reference value to D3D11 8-bit limitations. D3D11 can only mask 8 bits of a stencil reference value, so the upper bits are ignored. GL, however, expects the reference value to be able to scale to 32-bits. We will expect to fail certain edge cases where the reference value, and mask, both use particular 9+ bit values. Change-Id: I8c7451270d9e40310f4154955d38e51bbf7de4df Reviewed-on: https://chromium-review.googlesource.com/181555 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
24112d68 2014-01-21 16:39:19 Only use 4-channel shaders for unpack buffers. D3D11 supports sampling other channel sizes of backing object and declaring them as 4-vectors in HLSL. This allows us to simplify the logic for fast unpack shaders significantly. Source: http://msdn.microsoft.com/en-us/library/windows/desktop/bb509700(v=vs.85).aspx (Default Values for Missing Components in a Texture) Change-Id: I7f645372f266f57bd94cdb1c795f1d30bf2a60a4 Reviewed-on: https://chromium-review.googlesource.com/181901 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
c30003d6 2014-01-10 12:51:23 Fix zero-size textures and unpack buffers. We would sometimes attempt to use a NULL staging texture when initializing a zero size texture when using unpack buffers. Change-Id: I2e03141c19d9c47eeffb0d56c03bcfe476a9e48d Reviewed-on: https://chromium-review.googlesource.com/181781 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
b155bbcb 2014-01-13 09:51:03 Properly clamp stencil mask query values to max int. We could overflow when casting from max unsigned int to integer, and return a negative mask. See dEQP functional.state_query.stencil_value_mask_getfloat Change-Id: I59189a40b662ad9d8ded79cdfeded923b98f0b85 Reviewed-on: https://chromium-review.googlesource.com/181780 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
9c53f1e9 2014-01-08 13:41:47 Add more D3D11 buffer usages. Works around performance regressions when index and vertex buffer bind flags are used on the same buffer. Change-Id: I28bc0d3147c6bd70cec507f20e41d97ec4cc45a5 Reviewed-on: https://chromium-review.googlesource.com/181911 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
55856b16 2014-01-02 13:59:50 Clean up state query methods. Consolidate a lot of the code duplication in GetIntegerv, GetFloatv, GetBooleanv and GetInteger64v. BUG=angle:540 Change-Id: I7b4a5803ea76e5eeb0ebf25c5caadec4c647b485 Reviewed-on: https://chromium-review.googlesource.com/180971 Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
91382e55 2014-01-07 16:16:30 Renderer11 tracks applied textures as SRVs. Since swizzled textures have multiple SRVs and the same serial, it was possible that the bound SRV would not be updated if the texture became swizzled while already bound. Change-Id: Id06e82f4002aa7f7661c7a69243692aa65a83b48 Reviewed-on: https://chromium-review.googlesource.com/181772 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
b8f8b89b 2014-01-07 10:12:50 Fix using wrong value for array size in 2D array storage. We were incorrectly calling Texture::getBaseLevelDepth() which was correctly reporting the number of 3D slices of the texture (1). Also rename Texture2DArray::getDepth to getLayers for clarity. Change-Id: I1968cbcb0a3528bb76ec3e4ea4148e5dc0f302c7 Reviewed-on: https://chromium-review.googlesource.com/181553 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
67938efc 2014-01-07 16:17:21 Added missing depth swizzle backing formats and fixed compressed texture bit calculation. Change-Id: I2390ace1fe5297f9fcad0c873c55dae564a09c43 Reviewed-on: https://chromium-review.googlesource.com/181773 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
d2a88381 2014-01-06 14:03:51 Fix improper deferencing of a zero-size vector. When doing a masked clear with only a depth-stencil buffer, we would look for the zero-th element of an empty vector. Change-Id: I17d61cf582c6e91fd46f8a8e13e35c6d32dfa109 Reviewed-on: https://chromium-review.googlesource.com/181554 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
b6780326 2014-01-03 10:57:25 Fix default vertex attribute component size to 4. The GL spec states that by default a vertex attribute has a size of 4. Change-Id: Ic4c977fb936cc0b232ed4742eeb061d6ba6843be Reviewed-on: https://chromium-review.googlesource.com/181480 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
80b5a55e 2014-01-03 10:57:11 Fix compressed formats breaking swizzle bits checks. We defautled to zero max bit depth, which breaks the swizzle format lookup. Change-Id: I4d1cd8bcfb79db3460950fa22630c259f90fa432 Reviewed-on: https://chromium-review.googlesource.com/181481 Reviewed-by: Jamie Madill <jmadill@google.com> Commit-Queue: Jamie Madill <jmadill@google.com> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
79f2f45c 2013-12-19 11:13:02 Fix allowing ES3 enum queries to call through to ES2 contexts. In some cases we would not validate the enums against the context version, allowing the app to call through to unimplemented features. BUG=angle:540 Change-Id: Ic89422a3a48882314c054f133961af0b4d8d739a Reviewed-on: https://chromium-review.googlesource.com/180970 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
2e503557 2013-12-19 13:48:34 Add in fixes for dEQP state reset. dEQP relies on a couple specific enums to reset state (see the prerequisites test) which we don't currently implement. Prior changes require us to implement a few query parameter to allow dEQP to work. BUG=angle:540 Change-Id: Ibd7caa08ffb821ea2de120717beedb2f82428da2 Reviewed-on: https://chromium-review.googlesource.com/180981 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
03181abc 2013-12-18 12:56:06 Fix sorting uninitialized attribute semantics to the end. A missing condition would produce a sort order where sometimes -1 was shifted to the front of the semantic array, instead of the end. BUG=angle:527 Change-Id: I69b2e5ccc03f6523771601cd59293d6cd325be2f Reviewed-on: https://chromium-review.googlesource.com/180651 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
13a2f85b 2013-12-11 16:35:08 Implement max elements indices and vertices. ES3 has integer queries for the maximum recommended number of vertices and indices per draw call. These are roughly correlated to D3D's resource limits -- however, while ES3 has recommended limits D3D has hard limits. Change-Id: Ib653bc27e61607c78d0c5e70b0d97fea7af6464f Reviewed-on: https://chromium-review.googlesource.com/179670 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
cd65ae16 2013-12-17 15:20:14 Trigger lost device on an error in D3D9 Present. This fixes device remove handling on AMD systems, as well as notifying the app layer there may have been an internal problem during Present. BUG=313210 Change-Id: I843ffb3946dd9ef34fbd24b3a46a7b97e3c0fd16 Reviewed-on: https://chromium-review.googlesource.com/179140 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/180450 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
7a93437b 2013-12-06 18:17:48 Fix initialization of thread local storage in libGLESv2. When an app would load libGLESv2.dll via LoadModule, then would call methods on a thread that was already created, we could creash because of uninitialized thread local storage. BUG=angle:488 Change-Id: I9b05de462232a16d639c58ec07386b7c38a01793 Reviewed-on: https://chromium-review.googlesource.com/179132 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
3b866b6c 2013-09-30 15:21:00 Clear11 will not clear channels that are not supposed to exist in the render target's format. Change-Id: I9c2bb927ec63d67d315893d44f199ceab4b5df82 Reviewed-on: https://chromium-review.googlesource.com/176856 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
c142e9da 2013-09-30 15:19:47 Renderer classes now set their blend states to mask out channels that do not exist in the render target. Change-Id: Ia49bf8de07bbdfa31275ec9835de28adc3717485 Reviewed-on: https://chromium-review.googlesource.com/176855 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
3929c1c4 2013-12-05 11:48:38 Store the commit date in version.h, and in the DLL properties. This will allow Chrome, or other apps who reference ANGLE internally, to pull chronological version information about ANGLE. Change-Id: I7dbd5b60b533f176b34f7248d70a1d9757ae99d6 Reviewed-on: https://chromium-review.googlesource.com/179100 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
f8c2f5cb 2013-12-05 13:52:33 Fix indices not being offset to the bound vertex buffer when drawing indexed points in D3D9. bug=angle:535 Change-Id: I5b86874cddbd3b90fe141e94085f5a4afb9f3db3 Reviewed-on: https://chromium-review.googlesource.com/179101 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
34256ed8 2013-09-30 15:15:52 Image and RenderTarget classes now initialize their textures if required. Change-Id: I2cce6f4ffdc7e2a6c23c50d663c6316f9b125880 Reviewed-on: https://chromium-review.googlesource.com/176854 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
0c99b1b0 2013-09-30 15:07:43 Add functions to check if texture data initialization is required. Change-Id: I54c3b90780c304d6001b9e52278672981c96cb83 Reviewed-on: https://chromium-review.googlesource.com/176853 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
2916b30e 2013-11-28 13:41:10 Removed extra AddRef and Release calls on D3D11 objects. Change-Id: I5918c67735658912663c79e964b8edfb288784a3 Reviewed-on: https://chromium-review.googlesource.com/178450 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
fa3d9f30 2013-12-03 16:58:17 Fix swapchain resize errors when sizing to 0 width or height. BUG=angle:519 Change-Id: I3d3d0746b2b3027d04c91cc5fdcd301930e3b22a Reviewed-on: https://chromium-review.googlesource.com/178439 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
88f779dd 2013-12-03 10:57:56 Fix device removed handling for systems which do not immediately allow recreating a new device. On Intel systems there's a cool-down period when you must wait before recreating the device. BUG=313210 Change-Id: I22cdf41eecf0eae5058b59e1b0863173d604d606 Reviewed-on: https://chromium-review.googlesource.com/178437 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org>
049108df 2013-11-19 10:41:49 Include the current commit as part of the build process. BUG=angle:529 Change-Id: I6d1d227b495e9bae6e017c88642679210c6d2355 Reviewed-on: https://chromium-review.googlesource.com/177233 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
a049fe1e 2013-12-02 13:14:57 Add NULL init for swizzle SRVs with eglBindTexImage textures. Change-Id: I8a1069013f37988632db07359d65f8215041978e Reviewed-on: https://chromium-review.googlesource.com/178431 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
42477a43 2013-09-17 17:07:02 Renderer11 now generates swizzles and invalidates the cached swizzles. Change-Id: If5c998a91195942297beeb26a0ec635ff6a466ea Reviewed-on: https://chromium-review.googlesource.com/177035 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
391c8c50 2013-09-17 17:05:51 Added a RenderBuffer/RenderBufferInterface getTextureStorage method. Change-Id: I710fba737524e735349ce1c0b09fa535555bd029 Reviewed-on: https://chromium-review.googlesource.com/177034 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
e2e0ce0c 2013-09-17 17:05:08 Context now detects if a texture needs to be swizzled and calls Renderer::generateSwizzles. Change-Id: I89f30e028b1d6ec384536cdbeedd91bb98359e8f Reviewed-on: https://chromium-review.googlesource.com/178440 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
644bbf24 2013-09-17 17:02:43 Added a swizzle cache to TextureStorage11. Change-Id: Iebf297ef5b8560bb468428fc369eb3df8f43ec11 Reviewed-on: https://chromium-review.googlesource.com/177032 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
00f6bc32 2013-09-20 14:59:06 Add GetSwizzle*Format functions to formatutils11. Change-Id: Idcd4aa5fd18c1629168ba7cdd41e8fb3f6c3ead3 Reviewed-on: https://chromium-review.googlesource.com/177031 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
bc90a480 2013-09-17 16:51:27 Added TEXTURE_SWIZZLE_* parameters to the texture sampler state and API queries. Change-Id: I20aff392ec4cd9e49424afae94a862fdd8eef9b8 Reviewed-on: https://chromium-review.googlesource.com/177030 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
ed883f54 2013-09-10 17:20:54 Added a swizzleTexture method to Blit11. Change-Id: I0af836f761893c8928a84d138a6b2d07a3e04da6 Reviewed-on: https://chromium-review.googlesource.com/176989 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
3c9eeb97 2013-11-04 11:09:26 Disable optimizations for shaders with conditional discard in D3D9, and only use expanded short-circuiting conditionals for expressions with potential side-effects. Conservatively assume aggreate and selection operators have side effects for now. BUG= ANGLEBUG=486 R=geofflang@chromium.org, kbr@chromium.org, nicolas@transgaming.com, shannonwoods@chromium.org Review URL: https://codereview.appspot.com/14441075 Conflicts: src/common/version.h src/compiler/translator.vcxproj src/compiler/translator.vcxproj.filters src/compiler/translator/OutputHLSL.cpp src/libGLESv2/ProgramBinary.cpp src/libGLESv2/Shader.cpp src/libGLESv2/Shader.h Change-Id: Iaf9f10b5de7b33c927ef032f3c4fe9d5095f64dd
5a60b739 2013-11-26 09:49:23 Ensure stream source frequency for stream 0 is set to 1 in swapRect for D3D9. This prevents D3D errors which we could see when using the Debug runtime. BUG=321834 Change-Id: I1dd66d9d80def5e558fc13c218fde9c4047ab2b4
b7935e51 2013-11-20 15:47:47 Proper handling of D3D9Ex device removed. BUG=313210 Change-Id: I85dae10bc2ec38a1e9c09f318b8f6b9196466d60
1293cf4b 2013-11-21 18:33:44 Merge "Renamed some Blit11 types and methods to imply they are for blitting (as opposed to swizzleing)." into es3proto
453aaba4 2013-11-20 11:02:23 Don't let mBufferSize fall out of sync with the actual buffer size. Pervents unnecessary buffer re-creations. Change-Id: Ie40300865dcd7830fe8eafbccfaa3edad46c7b52
26533604 2013-09-09 16:41:42 Renamed some Blit11 types and methods to imply they are for blitting (as opposed to swizzleing).
fcef3366 2013-11-13 19:37:19 Fix bug with nested struct uniforms. TRAC #22875 Change-Id: I204cea18a710f6b9206a578a69f1dbc1e13fbd71 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
c6a2dcf8 2013-10-31 13:54:01 Fix improper getSamplerState in Context::applyTextures. Introduced in cdf22f94acaf86. R=geofflang@chromium.org BUG= Review URL: https://codereview.appspot.com/20320043
f07558ac 2013-10-31 11:16:22 Fix glGetUniform for non-square matrices. TRAC #22846 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
95f9f986 2013-10-21 17:09:19 Remove use of DXGI_FORMAT_R32G32B32_FLOAT as a backing format for GL_LUMINANCE32F_EXT. TRAC #24036 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
cdf22f94 2013-10-31 10:38:23 Don't apply textures that are currently bound to the framebuffer. BUG=496 Review URL: https://codereview.appspot.com/18450045
89bf4bff 2013-10-31 10:32:46 Fixed a bug where the vertex data manager was not caching the current value attributes properly. ANGLEBUG=489 Review URL: https://codereview.appspot.com/18670043
1ec57f80 2013-10-16 11:43:23 Add support for GL_EXT_color_buffer_float. TRAC #23794 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
6b7440ca 2013-10-24 17:49:47 Remove TextureStorage::GetActualLevelCount. TRAC #23978
4cfff5f3 2013-10-24 17:49:46 Modify texture storage classes to store a base and max level, instead of a range of levels. TRAC #23978 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
b16b8ed7 2013-10-24 17:49:45 Add helper functions for returning the dimensions of a level in a texture storage. TRAC #23978 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
07bb8cf4 2013-10-24 17:49:44 Remove Texture::levelCount() and replace it with isValidLevel(). TRAC #23978 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
51a94370 2013-10-24 17:49:43 Replace API queries of immutable texture level count with a specialized function. TRAC #23978 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
2ebab858 2013-10-24 17:49:42 Remove Texture::getStorage, which is no longer needed after the previous refactorings. TRAC #23976 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
884a4626 2013-10-24 17:49:41 Refactor storage management in Texture2DArray. TRAC #23976 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
e664e206 2013-10-24 17:49:40 Refactor storage management in Texture3D. TRAC #23976 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
3c0989c6 2013-10-24 17:49:39 Refactor storage management in TextureCube. TRAC #23976 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
73b5d06e 2013-10-24 17:49:38 Refactor texture storage management in the Texture2D. TRAC #23976 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
169d1118 2013-10-24 17:49:37 Rename Texture and Image methods which operate on storage objects to refer to storage instead of textures. TRAC #23961 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
22f843a1 2013-10-24 17:49:36 Make a virtual method Texture::mipLevels to return the value of mip levels defined as in the GL spec. Also known as the "q" function. TRAC #23961 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
2db197cd 2013-10-24 17:49:35 Use a consistent naming scheme for the cube map face index variables in Texture.cpp. TRAC #23961 Signed-off-by: Shannon Woods Signed-off-by: Geoff Lang
d4589c97 2013-10-24 17:49:34 Simplify passing the texture usage parameters through the texture classes. Avoid passing a raw GLenum when possible. TRAC #23961 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
e83d1a93 2013-10-24 17:49:33 Change Texture::convertToRenderTarget to ensureRenderTarget, which tries to convert a storage to a RT if it isn't already. TRAC #23961 Signed-off-by: Geoff Lang Signed-off-by: Shannon Woods
632192dd 2013-10-04 13:40:46 Added support for EXT_texture_rg in D3D9 and D3D11. TRAC #22423 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
4133f5c2 2013-10-10 13:51:18 24bit depth formats need to flip the depth and stencil bits when loading. TRAC #23540 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
85ea9abb 2013-10-10 13:50:34 Fixed the GL_FLOAT_32_UNSIGNED_INT_24_8_REV type having the incorrect number of bytes and allowed the depth stencil formats to specify that they have unused bits. TRAC #23540 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
88f9cbf2 2013-10-18 14:33:37 SwapChain11 now stores a SRV of it's depth stencil. TRAC #24025 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods