- 05 Feb, 2014 4 commits
-
-
Jamie Madill authored
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/183586Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
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/183585Tested-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org>
-
Geoff Lang authored
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/184395Tested-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org>
-
Jamie Madill authored
With certain selection statements with a vertex input in the condition and side-effects in the else-block, we'd run in to a D3D9 compiler bug which would cause incorrect results. We can work around this bug in D3D9 by selectively rewriting these statements to use an 'else if' clause instead of 'else'. BUG=322794 Change-Id: I93c96fb201ff4959c00d9a36321faac7e0343278 Reviewed-on: https://chromium-review.googlesource.com/184681Reviewed-by:
Nicolas Capens <nicolascapens@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
- 04 Feb, 2014 1 commit
-
-
Geoff Lang authored
Change-Id: I5e5aca5cda2bf1a96db05d594c64970ebf54fd29 Reviewed-on: https://chromium-review.googlesource.com/184572Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
- 03 Feb, 2014 1 commit
-
-
Geoff Lang authored
Change-Id: I83e3091243be442eafa4d16e4a4ce247a326c493 Reviewed-on: https://chromium-review.googlesource.com/184570Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
- 31 Jan, 2014 1 commit
-
-
Geoff Lang authored
Change-Id: I28a7654d152865c236831636f00554a71784667b Reviewed-on: https://chromium-review.googlesource.com/184394Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
- 30 Jan, 2014 3 commits
-
-
Jamie Madill authored
Also add a few missing DXGI formats related to vertex inputs. Change-Id: Ia39234a164000d11eef3806ba4f06b6426f1cbb7 Reviewed-on: https://chromium-review.googlesource.com/183584Tested-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
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/183583Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
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/184370Reviewed-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>
-
- 28 Jan, 2014 2 commits
-
-
Jamie Madill authored
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/183582Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
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/181782Tested-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
- 23 Jan, 2014 6 commits
-
-
Geoff Lang authored
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/183251Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
We were not checking for an invalid renderbuffer when attaching to a framebuffer. Change-Id: Ie29dca1833cc8c2b974f746d51dbee848f52a741 Reviewed-on: https://chromium-review.googlesource.com/181558Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Change-Id: I347583ae1adcaaae9feeb1276f6150ceb8739885 Reviewed-on: https://chromium-review.googlesource.com/181557Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
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/181556Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
Change-Id: I424cb538808ec64137c85af3bbe8742043e1c573 Reviewed-on: https://chromium-review.googlesource.com/183260Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
Changed ANGLE_DISABLE_* to ANGLE_ENABLE_* for perf and tracing defines so they are disabled by default. Updated the gyp files to only turn on perf by default for windows debug builds. Change-Id: I71706674e6d12fbf4208acc8f100d963b82c7674 Reviewed-on: https://chromium-review.googlesource.com/183250Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
- 21 Jan, 2014 5 commits
-
-
Jamie Madill authored
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/181555Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
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/181901Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
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/181781Reviewed-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>
-
Jamie Madill authored
A breaking change in VS2013 necessitates we include <algorithm> to use std::min/max. BUG=angle:547 Change-Id: Ia1b21e61d22148ab6d268b34dbfe9a707ca3e59d Reviewed-on: https://chromium-review.googlesource.com/182512Reviewed-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>
-
Jamie Madill authored
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/181780Reviewed-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>
-
- 15 Jan, 2014 6 commits
-
-
Geoff Lang authored
Change-Id: Idb4c2ca318c84433f2b06bd4f0c66045f43e56de Reviewed-on: https://chromium-review.googlesource.com/182191Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
Change-Id: If04bc249b9da8306896c89c28bb057c2cf4da511 Reviewed-on: https://chromium-review.googlesource.com/181771Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
Change-Id: I76d568ce7b1acb84aba99adf8e6ca921e0933ac4 Reviewed-on: https://chromium-review.googlesource.com/182190Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
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/181911Tested-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org>
-
Geoff Lang authored
Change-Id: I8cf650073ead5b52bac44e31c8c3c894bc31e01c Reviewed-on: https://chromium-review.googlesource.com/182320Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
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>
-
- 10 Jan, 2014 3 commits
-
-
Geoff Lang authored
Change-Id: I335c9346ac268beab25184e2b18ccfdd0b15c7b1 Reviewed-on: https://chromium-review.googlesource.com/182150Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
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/181772Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
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/181553Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
- 09 Jan, 2014 1 commit
-
-
Geoff Lang authored
Change-Id: I2390ace1fe5297f9fcad0c873c55dae564a09c43 Reviewed-on: https://chromium-review.googlesource.com/181773Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
- 08 Jan, 2014 1 commit
-
-
Brendan Long authored
BUG=angle:536 Change-Id: I72287f5ce9736cd48fc241022e09446db717cf92 Reviewed-on: https://chromium-review.googlesource.com/181770Tested-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 07 Jan, 2014 1 commit
-
-
Jamie Madill authored
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/181554Reviewed-by:
Shannon Woods <shannonwoods@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
- 06 Jan, 2014 5 commits
-
-
Nicolas Capens authored
BUG=angle:541 Change-Id: I63dd47c40d693724aa6bed93e9967e3b1f8535bd Reviewed-on: https://chromium-review.googlesource.com/181521Tested-by:
Nicolas Capens <nicolascapens@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org>
-
Shannon Woods authored
BUG=angle:428 Change-Id: I282a6bf138b4e2a2c17baf428cbe1e636f43bdd6 Reviewed-on: https://chromium-review.googlesource.com/181640Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by:
Shannon Woods <shannonwoods@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/181670 Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Nicolas Capens authored
BUG=angle:541 Change-Id: Ied96edd073017a507369319a781b8ed23f60790b Reviewed-on: https://chromium-review.googlesource.com/181520Tested-by:
Nicolas Capens <nicolascapens@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shannon Woods <shannonwoods@chromium.org>
-
Jamie Madill authored
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/181480Reviewed-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>
-
Jamie Madill authored
We defautled to zero max bit depth, which breaks the swizzle format lookup. Change-Id: I4d1cd8bcfb79db3460950fa22630c259f90fa432 Reviewed-on: https://chromium-review.googlesource.com/181481Reviewed-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>
-