|
5307e15d
|
2017-09-17T16:43:07
|
|
D3D11: Re-check disabled attribs on VAO switch.
When switching VAOs, if we switch to a VAO which has disabled
attributes, we could occasionally in some edge cases not have a buffer
initialized to render with. Fix this by re-checking the current
value (disabled) attributes every VAO switch.
Probably a regression caused by d28758d:
"D3D11: Re-enable updateVertexBuffer dirty bits."
BUG=angleproject:2156
BUG=angleproject:1156
Change-Id: Ic1795f914b9b4fa846241b0b4f9a8fe9c1183320
Reviewed-on: https://chromium-review.googlesource.com/669963
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d28758de
|
2017-08-30T15:32:48
|
|
D3D11: Re-enable updateVertexBuffer dirty bits.
In some cases, when the app would call glBufferSubData to do a small
data update in an existing vertex buffer, the sync code would not
flush out the data to the native D3D11 buffer from the temporary
staging buffer.
Fix this problem by notifying the VertexArray11 class when buffer
data is updated. Note that in the future we can improve this by
using a different update notification for when the buffer data changes
and when the underlying storage changes. For now take a very broad
approach.
BUG=angleproject:1156
Change-Id: I2e0fabc97c1f1d5a14d609247e61c602e9a5a85f
Reviewed-on: https://chromium-review.googlesource.com/644208
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c4e93668
|
2017-05-01T10:45:59
|
|
Update end2end tests to function without EXT_texture_storage.
This also exposed an issue in our glTexSubImage2D validation where the
sized format would be used for the texture support check when the unsized
format was provided. The GL_ALPHA32F format is not valid unless
EXT_texture_storage is present but using GL_ALPHA + GL_FLOAT is valid.
BUG=angleproject:1958
Change-Id: Ice0b7549c39559990942176481c5175df17aaf92
Reviewed-on: https://chromium-review.googlesource.com/491246
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c1d770e8
|
2017-04-13T17:31:24
|
|
Refactor remaining GLES 2.0 entry points.
This will pave the way for several features, like auto-generation.
BUG=angleproject:747
Change-Id: Ic390ac412f4e6b61346629093f185a4c07ea0284
Reviewed-on: https://chromium-review.googlesource.com/474118
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
7e24bfd3
|
2017-02-02T21:45:37
|
|
Fix StateChangeTestES3.FramebufferIncompleteWithCompressedTex
Was firing GL_DEBUG_TYPE_ERROR LogGLDebugMessage() on standalone Linux.
According to OpenGL ES 3.0.4 page 289:
The number of bits that represent a 4x4 texel block is 64 bits
if internalformat is given by COMPRESSED_RGB8_ETC2.
16x16 pixels are 16 blocks, giving 128 bytes.
BUG=angleproject:1826
Change-Id: I367e5a1369e1da2906c2ffc5ca5d703b62baf578
Reviewed-on: https://chromium-review.googlesource.com/436824
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
1be913cf
|
2016-07-11T17:59:16
|
|
Add support for ES31 context creation
The dEQP test for context creation passes.
SH_WEBGL3_SPEC has been added, but it should be considered whether we
should keep it, remove it or rename it. It was added so that there is
a webgl mapping to es 310 shaders. Check Compiler.cpp. The bison file
has been modified so that some tokens from es3 can be also used in
es31 as well.
A separate macro ES3_1_ONLY is added so that some tokens are limited
only for es 310 shaders.
BUG=angleproject:1442
TEST=angle_unittests
Change-Id: I2e5ca227c96046c30dc796ab934f3fda9c533eba
Reviewed-on: https://chromium-review.googlesource.com/360300
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e9a6593a
|
2016-06-20T17:57:05
|
|
Fix suppression for Intel.
BUG=None
Change-Id: I3e2e7e845e9ad3814f7d85e56c12023a5e2ef0df
Reviewed-on: https://chromium-review.googlesource.com/354104
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c7f59d02
|
2016-06-20T10:12:08
|
|
Suppress a Wintel/OpenGL failure on a new test.
BUG=angleproject:1388
Change-Id: I4d346ca3c6914e56055aa6492d9d013634a1b9ad
Reviewed-on: https://chromium-review.googlesource.com/353693
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
362876b1
|
2016-06-16T14:46:59
|
|
Cache Framebuffer completeness.
Improves performance on the render-to-texture microbenchmark
by ~3x on the OpenGL back-end. Wipes out several of the top profling
hotspots on that benchmark.
BUG=angleproject:1388
Change-Id: I6a35a0b435b2ed3c83d32acdb9df090df98214ad
Reviewed-on: https://chromium-review.googlesource.com/348957
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
9e3c615e
|
2016-03-29T21:58:33
|
|
Suppress end2end failures for the new Linux Intel bot.
Since this is a new bot, we should make it green ASAP so we can catch
any new regressions.
BUG=angleproject:1346
Change-Id: I2c1288b8115a9d7980d5a3f37753b35cbb837486
Reviewed-on: https://chromium-review.googlesource.com/336050
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
518b9fab
|
2016-03-02T11:26:02
|
|
Suppress some failing end2end_tests on Intel.
BUG=589851
Change-Id: Ia580cee30e6842aaddb4683025f425166f0f6120
Reviewed-on: https://chromium-review.googlesource.com/329735
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f09bf669
|
2016-03-02T11:26:01
|
|
Revert "Suppress some failing end2end_tests on Intel."
This reverts commit 7208f6994cf7d810c2226965362aad43d2a66f53.
Still some failures on Intel, requires a slightly different solution.
BUG=589851
Change-Id: I6ac6599249e9e0f6319c917e04734cd48ca9274d
Reviewed-on: https://chromium-review.googlesource.com/329734
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7208f699
|
2016-02-29T10:47:35
|
|
Suppress some failing end2end_tests on Intel.
BUG=589851
Change-Id: I91588014784a8a9b75389aeb596923458c30d80a
Reviewed-on: https://chromium-review.googlesource.com/329427
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1fbc59fe
|
2016-02-24T15:25:51
|
|
D3D11: Enable dirty bits for Framebuffer11.
This patch works using a notification scheme - whenever a Texture or
Renderbuffer changes in such a way as to recreate its RenderTarget, we
pass a signal to the Framebuffer to invalidate some internal state.
Everything is entirely tracked in the Renderer11 layer, and the GL
layer is left untouched.
A RenderTarget11 now tracks points to which it is bound, and the
Framebuffer11 is mostly responsible for managing those links.
The three locations where we notify a Framebuffer when its bound
RenderTargets might be dirty are:
1) RenderTarget11::~RenderTarget
2) EGLImageD3D::copyToLocalRendertarget
3) TextureStorage11_2D::useLevelZeroWorkaroundTexture
This patch gives about a 10% score increase in the D3D11 draw call
benchmark on my system.
BUG=angleproject:1260
Change-Id: Ide38aeadff4a2681bf5bd685e8ca3c9e2612a380
Reviewed-on: https://chromium-review.googlesource.com/327255
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e2509a39
|
2016-02-01T14:09:05
|
|
D3D11: Fix basic ReadPixels from 3D attachments.
Use the TextureHelper class to abstractly handle 2D and 3d textures.
Also refactor the Image11 copy methods to be a bit cleaner and not
use the copy conversion path when unnecessary.
This patch does not yet fix layer attachments - the fix for that will
come up in a subsequent patch.
BUG=angleproject:1290
Change-Id: If8b7aa8848ca4260e0dde690e7a99e115a97fabb
Reviewed-on: https://chromium-review.googlesource.com/323442
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5103f4c0
|
2016-01-26T11:40:18
|
|
Supress AMD OpenGL failures in angle_end2end_tests.
BUG=angleproject:1291
Change-Id: I4fc8cc152bb5ef18fff78bf312a14691e9de0243
Reviewed-on: https://chromium-review.googlesource.com/324030
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
60ec6ea7
|
2016-01-22T15:27:19
|
|
Implement dirty bits for Framebuffer.
The dirty bits set the stage for performance improvements in D3D, but
don't actually reduce any of the redundant work just yet.
BUG=angleproject:1260
Change-Id: Ib84e6a9b7aa40c37c41790f492361b22faaf4742
Reviewed-on: https://chromium-review.googlesource.com/318730
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|