|
40eefabd
|
2015-11-23T16:58:33
|
|
Rewrite WindowSurfaceCGL to use CAOpenGLLayer
It used to render to IOSurfaces and use setContents to directly give
them to the OSX compositor. This was worth the complexity only because
Chrome going to use that code path. This is no longer the case.
Instead we replace the implementation with one based on CAOpenGLLayer,
that basically gets a "draw" callback every frame. The complexity comes
from the fact that this callback is called from another thread, with
another CGL context.
BUG=angleproject:1233
Change-Id: I1878d0071d057e043e0bb9043d9849f50e00d023
Reviewed-on: https://chromium-review.googlesource.com/314031
Reviewed-by: ccameron chromium <ccameron@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
3d677ea6
|
2015-11-16T13:38:47
|
|
Implement EGL_ANGLE_x11_visual
Reland with a fixed tests on AMD.
This extension will be used by Chrome to advertise the visual it will
use for its windows. Having ANGLE use the same visual will bring
several benefits:
- A blit will be avoided, and the content of the window might be
rendered on the system framebuffer directly.
- There will be less latency when resizing windows which will make it
much less likely to see a black border when resizing.
BUG=522149
Change-Id: I66004b6ac45453330af7c4c810ddf2c26941be42
Reviewed-on: https://chromium-review.googlesource.com/314661
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
5ac60fc2
|
2015-11-27T13:42:02
|
|
Revert "Implement EGL_ANGLE_x11_visual"
Fails on Linux AMD:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Release%20%28ATI%29/builds/43819
EGLX11VisualHintTest.InvalidWindowVisualID:
../../third_party/angle/src/tests/egl_tests/EGLX11VisualTest.cpp:183: Failure
Value of: EGL_TRUE == eglInitialize(display, nullptr, nullptr)
Actual: false
Expected: true
BUG=522149
This reverts commit b28e010aa10b3e4aec3207e767be10ee5ffb25fd.
Change-Id: I9a02f2aa3caadd787eb0099c0ddf9d781084fa1c
Reviewed-on: https://chromium-review.googlesource.com/314660
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b28e010a
|
2015-11-16T13:38:47
|
|
Implement EGL_ANGLE_x11_visual
This extension will be used by Chrome to advertise the visual it will
use for its windows. Having ANGLE use the same visual will bring
several benefits:
- A blit will be avoided, and the content of the window might be
rendered on the system framebuffer directly.
- There will be less latency when resizing windows which will make it
much less likely to see a black border when resizing.
BUG=522149
Change-Id: Icd484c9a948ed5b5b9116247bb50560bffa30667
Reviewed-on: https://chromium-review.googlesource.com/312323
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
aa16dd4a
|
2015-11-25T13:25:29
|
|
Hard-limit the number of uniform vectors in OpenGL.
Using the real limits (usually 4096) can cause the uniforms/gl-uniform-arrays
WebGL test to time out. This limit artificial limit can be lifted once the
test is updated.
BUG=407309
Change-Id: I17a0a963e606800ec4f6f1972c777b597976622f
Reviewed-on: https://chromium-review.googlesource.com/314460
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b4a3af29
|
2015-11-25T15:02:51
|
|
Remove assertion that OpenGL program linking succeeds.
This assertion is causing problems on the debug bots. While the assertion is
nice for local debugging, causing the entire run of WebGL cts on the trybots
to fail is too big of a drawback.
BUG=angleproject:889
Change-Id: Ie86d2f0e84132bef8fb94a693440af7e9b7fc8e9
Reviewed-on: https://chromium-review.googlesource.com/314480
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
cc86d64e
|
2015-11-24T13:00:07
|
|
Make Framebuffer size check ES2-only.
This is an ES2-only incompleteness check. We also need to require
matching dimensions in D3D11, but make this an implementation
specific check. Also make all implementation specific errors
'UNSUPPORTED' since that catches all "non-ES" framebuffer
restrictions.
Note that we can't be conformant here in D3D11 currently, since the
spec only makes an exception for mismatching formats for UNSUPPORTED,
not for size checks. However, we don't have an easy solution.
BUG=angleproject:1225
Change-Id: Ic80a04bce397fc12643b010c874f432033babc5d
Reviewed-on: https://chromium-review.googlesource.com/313990
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6218c80b
|
2015-11-09T11:14:47
|
|
Revert "Revert "renderergl_utils: Require explicit location qualifier for OpenGLES3""
This reverts commit 45a7d64fd84a7cb292ff71890a61f8d2b7609aa4.
Change-Id: I7f94609fc7cf14220d98c61e73a13311d3cc4ecd
Reviewed-on: https://chromium-review.googlesource.com/311245
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
50ff85e5
|
2015-11-11T14:22:21
|
|
DisplayGLX: add support for complete lack of extensions
We thought we could rely on GLX_create_context_attrib being present but
this is not the case with VM drivers. Instead we fallback to creating
contexts with glXCreateContext that doesn't offer control on which
version and profile the context will have.
Likewise we may not always be able to use the multisample but we can
safely assume that the number of samples and sample buffers are zero in
this case.
BUG=angleproject:1206
Change-Id: I888c69e609764994baf86386c9683b3edeb320f7
Reviewed-on: https://chromium-review.googlesource.com/312230
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
67bc1021
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
Re-reland with a warning fix.
We would like to use the EXT_swap_control extension to specify the swap
interval of each drawable independently. However open source drivers do
not expose this extension and instead expose the MESA and SGI versions
that have a global swap interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I7ecf1eed6808672f277d0242d65f90d7851d2a32
Reviewed-on: https://chromium-review.googlesource.com/312322
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
2075102d
|
2015-11-13T15:21:30
|
|
Revert "GLX backend: fallback to lesser swap_control extensions"
This reverts commit a1393c59e9466dfe3a3ccaf710c272aa26045b85.
Change-Id: I5da0f740a7073f14ad1ee7e2876a9cc71a706e7f
Reviewed-on: https://chromium-review.googlesource.com/312231
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
a1393c59
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
Reland with a compilation fix.
We would like to use the EXT_swap_control extension to specify the swap
interval of each drawable independently. However open source drivers do
not expose this extension and instead expose the MESA and SGI versions
that have a global swap interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I6c24217c7cfd5e09f60469cc7d6336cd68bc5c32
Reviewed-on: https://chromium-review.googlesource.com/312270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
b2b6265b
|
2015-11-09T15:00:39
|
|
Display[GLX|CGL]: correctly set the config conformant bits
Reland with a fix for a compilation that happened because of a bad
rebase.
Previously there was a TODO to check if we supported ES3 before setting
the conformant bitfield. Now it is done.
BUG=angleproject:1188
Change-Id: I3ef2bd2bc71fb61c465085d32cf08a633904caa6
Reviewed-on: https://chromium-review.googlesource.com/312271
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
f0eb5bbb
|
2015-11-12T12:50:32
|
|
Revert "Display[GLX|CGL]: correctly set the config conformant bits"
Fixes build on Linux.
This reverts commit 46439bae5d441e13abf071ac209f310f2b044256.
Change-Id: Ie6da92e3ee6cc535f2c153a12af0aa63f6bea665
Reviewed-on: https://chromium-review.googlesource.com/312442
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
0ed0d8ac
|
2015-11-11T21:24:31
|
|
Revert "GLX backend: fallback to lesser swap_control extensions"
Compile error, whoops
This reverts commit 10ad877c41c05aa0764748844244ead6ebca6c1c.
Change-Id: Ic8c8b7945c7f702b91fc34ab6862e1aadb3e82e7
Reviewed-on: https://chromium-review.googlesource.com/312260
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
10ad877c
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
We would like to use the EXT_swap_control extension to specify the swap
interval of each drawable independently. However open source drivers do
not expose this extension and instead expose the MESA and SGI versions
that have a global swap interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I48e40e443ff9a258fc33b38efb0acf6b1f3db103
Reviewed-on: https://chromium-review.googlesource.com/311244
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
46439bae
|
2015-11-09T15:00:39
|
|
Display[GLX|CGL]: correctly set the config conformant bits
Previously there was a TODO to check if we supported ES3 before setting
the conformant bitfield. Now it is done.
BUG=angleproject:1188
Change-Id: Iffe30ebb5538e205695acd619ca17918d8550f3c
Reviewed-on: https://chromium-review.googlesource.com/311690
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
84f505db
|
2015-11-09T13:16:45
|
|
Revert "GLX backend: fallback to lesser swap_control extensions"
This reverts commit 26e3736fe30b9f67ee4b488d8a9d31ded1b679d3.
|
|
0e39f492
|
2015-11-09T13:16:41
|
|
Revert "Revert "Revert "renderergl_utils: Require explicit location qualifier for OpenGLES3"""
This reverts commit 24db86441d148eb6a497b70c015296422ab48470.
|
|
26e3736f
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
Ideally we want to use EXT_swap_control as the code currently does as
it allows us to specify the swap interval of each drawable
independently. However open source drivers do not expose this extension
and instead expose the MESA and SGI versions that have a global swap
interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I251c6edf400aeeae5359a4370020e74b8e6cae51
|
|
24db8644
|
2015-11-09T11:14:47
|
|
Revert "Revert "renderergl_utils: Require explicit location qualifier for OpenGLES3""
This reverts commit 45a7d64fd84a7cb292ff71890a61f8d2b7609aa4.
Change-Id: I2a8212c7507a7566baca200ed938d9e00f7103c2
|
|
a4ff7f45
|
2015-11-06T10:51:50
|
|
Revert "Revert "DisplayGLX: rework how glXCreateContextAttribsARB is called""
This reverts commit 2df979ed06df3be3785d179f5bbe12f85dee69dc.
Change-Id: Iff4ec858b8f42a4749cfc55749eb8f57b419f98f
Reviewed-on: https://chromium-review.googlesource.com/311271
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
|
|
63e4e724
|
2015-11-06T19:15:11
|
|
Revert "Using dirty bits notification for blend state"
Failing the dEQP-GLES3 tests:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20dEQP%20%28NVIDIA%29/builds/4036/
3 tests failed:
dEQP_GLES3.Default/functional_multisample_fbo_4_samples_sample_coverage_invert (c:\b\build\slave\gpu_win_builder\build\src\third_party\angle\src\tests\deqp_support\angle_deqp_gtest.cpp:234)
dEQP_GLES3.Default/functional_multisample_fbo_8_samples_sample_coverage_invert (c:\b\build\slave\gpu_win_builder\build\src\third_party\angle\src\tests\deqp_support\angle_deqp_gtest.cpp:234)
dEQP_GLES3.Default/functional_multisample_fbo_max_samples_sample_coverage_invert (c:\b\build\slave\gpu_win_builder\build\src\third_party\angle\src\tests\deqp_support\angle_deqp_gtest.cpp:234)
BUG=angleproject:1161
This reverts commit ff2ab571b00023926ce39a91bfe20e13578d1281.
Change-Id: Ibf61fc2c64ffc31778645bfe0292516b1f107397
Reviewed-on: https://chromium-review.googlesource.com/311243
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
45a7d64f
|
2015-11-06T16:19:21
|
|
Revert "renderergl_utils: Require explicit location qualifier for OpenGLES3"
Causes angle_end2end_tests failures on Mac
This reverts commit d63243f5be2ac7d8dafa6aea5b23e036074af397.
Change-Id: Idf25d7fe9f4162813a4fc67927191747f660fceb
Reviewed-on: https://chromium-review.googlesource.com/311041
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
d63243f5
|
2015-10-29T14:23:37
|
|
renderergl_utils: Require explicit location qualifier for OpenGLES3
BUG=525930
Change-Id: I591308078c5a392a527291419567a11241a8be17
Reviewed-on: https://chromium-review.googlesource.com/309636
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
121ea584
|
2015-11-04T17:00:33
|
|
DisplayGLX: validate configs against the backing context's config
This is a step required before adding an ANGLE extension that will
allow passing the Visual ID to use for the context at display creation
time: the configs will have to be compatible with it even if the visual
has non-standard sizes.
BUG=522149
Change-Id: I85e8ee3b9072934c665bddfa2b461d26f8903ff3
Reviewed-on: https://chromium-review.googlesource.com/311220
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
bf8a72f6
|
2015-11-03T16:34:45
|
|
When doing a LUMA blit, render to an intermediate texture.
Instead of rendering the swizzled result to the destination texture,
render to another intermediate texture and then CopyTexImage it into the
destination texture. Rendering to arbitrary mip levels of the destination
texture is not always supported but CopyTexImage-ing is.
BUG=angleproject:1113
Change-Id: I352a1fcc769ce92268744d3e7a6265dd2bfddb37
Reviewed-on: https://chromium-review.googlesource.com/310570
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ff2ab571
|
2015-10-05T16:48:06
|
|
Using dirty bits notification for blend state
BUG=angleproject:1161
Dirty bit notifications are used in GL for state tracking, but not D3D.
Before, D3D would use memcmp to check a change in state for every call.
This showed up as a hot spot in the perf test runs. Hence, switching D3D
over to the dirty bit system similar to GL backend will help.
Change-Id: I482edc852f1dcc888af3038ff3a61916496a02bc
Reviewed-on: https://chromium-review.googlesource.com/305295
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Dian Xiang <dianx@google.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
72028778
|
2015-10-30T10:31:54
|
|
DisplayGLX: on mesa only expose configs with the same depth-stencil
BUG=angleproject:1188
Change-Id: I19516cf3d037245144dfbe6fa2eed13a57aa6800
Reviewed-on: https://chromium-review.googlesource.com/309635
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0b2e7461
|
2015-10-28T17:29:15
|
|
RendererGL: only support ES3 when GLSL packing builtins are available
BUG=angleproject:1188
Change-Id: I07638c52ef09ffc96d91eec25c32dd905207c49f
Reviewed-on: https://chromium-review.googlesource.com/309650
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
2df979ed
|
2015-11-02T22:08:57
|
|
Revert "DisplayGLX: rework how glXCreateContextAttribsARB is called"
Breaks dEQP-GLES2.functional.texture.specification.basic_copyteximage2d.2d_alpha
BUG=angleproject:1188
This reverts commit 31e60cf221801a60c052112b5a0bbcfad9b5f705.
Change-Id: Icf1fcd984832a813536fe63e385b3cf9f667d66b
Reviewed-on: https://chromium-review.googlesource.com/309801
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
31e60cf2
|
2015-10-28T16:09:03
|
|
DisplayGLX: rework how glXCreateContextAttribsARB is called
This patch adds handling of the EGL ANGLE platform api version display
attributes for better testing.
It makes the code more resilient by ignoring X11 errors that could crash
our program in the call to glXCreateContextAttribsARB.
It also makes sure that we always choose the most recent OpenGL version
available on the system.
BUG=angleproject:1188
Change-Id: I26e1bf6733215db6f5841b54c471f644e2b15e89
Reviewed-on: https://chromium-review.googlesource.com/309633
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
62c49f5d
|
2015-10-30T10:34:17
|
|
PbufferSurfaceGLX: avoid creating (0, 0)-sized pbuffers
It crashes on Mesa.
BUG=angleproject:1188
Change-Id: I1e1e3e696bfda0c127b683a620cbaf302087e43b
Reviewed-on: https://chromium-review.googlesource.com/309630
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1cf66a8d
|
2015-10-28T10:59:50
|
|
platform_glx: Add support for ARB_create_context_profile
BUG=angleproject:1188
Change-Id: I5a72ff3521c01b4da661a90f6d761da61b3aad60
Reviewed-on: https://chromium-review.googlesource.com/309631
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
42590dd7
|
2015-10-28T11:16:41
|
|
Fix a typo in DisplayWGL
BUG=None
Change-Id: Ib9d43ced80f38c61f5936fb027433d9f2b4c7f98
Reviewed-on: https://chromium-review.googlesource.com/309632
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e3f3cf7b
|
2015-10-27T10:17:07
|
|
DisplayGLX: make the dummy pbuffer of size (1, 1)
This works around a Mesa crasher bug.
BUG=angleproject:1188
Change-Id: Ief7e6e841715cc04dea696bc1919d7a2d6fbc78d
Reviewed-on: https://chromium-review.googlesource.com/309141
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
c8947ea2
|
2015-10-27T10:16:39
|
|
FunctionsGLX: add glXGetCurrent(Drawable|Context) support
BUG=angleproject:1188
Change-Id: Ibf0fb4be3ec08cc43b2d9aba03a3d0fc12adce9d
Reviewed-on: https://chromium-review.googlesource.com/309140
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
bc781f31
|
2015-10-26T09:27:38
|
|
Re-re-land "Add GL_OES_vertex_array_object to D3D11 and GL renderers"
+ Include fixed validation logic for GL_UNPACK_SKIP_IMAGES and GL_UNPACK_ROW_LENGTH
+ Include fix for Clang build break
BUG=angleproject:1186
Change-Id: I403a066e29614f532db6931755265d2ee088d442
Reviewed-on: https://chromium-review.googlesource.com/308746
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5296141b
|
2015-10-26T15:33:27
|
|
Revert "Re-land "Add GL_OES_vertex_array_object to D3D11 and GL renderers""
Fails build on Clang because Caps.cpp defines a constructor
initializer out-of-order with the member variable order in the
header.
BUG=angleproject:1186
This reverts commit 7432321e03a70a99639b149f44cf80086feb4ea2.
Change-Id: I2840d02e6e7b6bbc76eb495b5462c43116a5c4a6
Reviewed-on: https://chromium-review.googlesource.com/308800
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b2e2425a
|
2015-10-05T16:03:10
|
|
Fixed compilation on mingw.
BUG=angleproject:1184
This is reland of parts of commit 566273222683314d.
It also adds <algorithm> include in FunctionsWGL.cpp,
which is needed for std::find on GCC.
Change-Id: I852008087afa6b12da6e7e29934fa83390fded21
Reviewed-on: https://chromium-review.googlesource.com/308090
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
7432321e
|
2015-10-23T10:07:18
|
|
Re-land "Add GL_OES_vertex_array_object to D3D11 and GL renderers"
Include fixed validation logic for GL_UNPACK_SKIP_IMAGES and GL_UNPACK_ROW_LENGTH
BUG=angleproject:1186
Change-Id: I9910a67733702a05991f62129d200ea39adb910c
Reviewed-on: https://chromium-review.googlesource.com/308421
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
023a290e
|
2015-10-23T16:43:24
|
|
Revert "Add GL_OES_vertex_array_object to D3D11 and GL renderers"
This is failing the WebGL 2 test:
WebglConformance.conformance2_state_gl_get_calls
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win8%20Debug%20%28NVIDIA%29/builds/9807
Also the dEQP-GLES3 tests:
dEQP-GLES3.functional.state_query.integers.unpack_skip_images_get*
BUG=angleproject:1186
This reverts commit eb36e275b8f63ebd442a2580e858ef671ddfe1be.
Change-Id: If903c471f4610ac0b33a268df42f3329d672f429
Reviewed-on: https://chromium-review.googlesource.com/308460
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bb7740cc
|
2015-10-20T15:30:53
|
|
angle: prevent huge allocations when GL_MAX_VERTEX_ATTRIBS fails
I'm not sure why yet, but when using angle in skia,
getIntegerv(GL_MAX_VERTEX_ATTRIBS, &maxVertexAttribs) sometimes fails,
and when that happens we attempt to allocate and array with the size of
maxVertexAttribs, which is uninitialized, which could be huge.
Prevent this by initializing the variable.
Also sweep through other similar calls and ensure that these use
initialized values (test code has not been updated)
BUG=skia:4380
Change-Id: If1f3cf72f2b2829ad3933637af8778d574a20f61
Reviewed-on: https://chromium-review.googlesource.com/307239
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Dian Xiang <dianx@google.com>
Tested-by: Hendrik Wagenaar <hendrikw@chromium.org>
|
|
eb36e275
|
2015-10-20T13:44:10
|
|
Add GL_OES_vertex_array_object to D3D11 and GL renderers
BUG=angleproject:1186
Change-Id: I7c685084b42f977902228cadca3263064881ba77
Reviewed-on: https://chromium-review.googlesource.com/307038
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6ea6f942
|
2015-09-11T13:11:22
|
|
Support GL_ETC1_RGB8_OES.
Passes all dEQP tests related to etc1.
Reland: Updated to work with the D3D11 renderer and re-tested with
chromium's gles2_conform_test.
Change-Id: Id2ce1b0eb58129152f67016ce2dc3ab19208269c
Reviewed-on: https://chromium-review.googlesource.com/299770
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1a683460
|
2015-09-29T15:09:59
|
|
Implement TransformFeedbackGL.
Reland with supression for TransformFeedbackTest.MultiContext on Linux
AMD.
BUG=angleproject:889
Change-Id: I6f2a2e856dacf16308de222dd0936bedbb3b175c
Reviewed-on: https://chromium-review.googlesource.com/307871
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
a9ca8e20
|
2015-10-22T14:34:20
|
|
Revert "Implement TransformFeedbackGL."
Failing on AMD Linux bots.
This reverts commit a9c5288192f90ebf03b0d26d86964b4fbce74bcb.
Change-Id: I2a2db8c3d96c4b927d7d784486c6df772ae63084
Reviewed-on: https://chromium-review.googlesource.com/308130
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
a9c52881
|
2015-09-29T15:09:59
|
|
Implement TransformFeedbackGL.
BUG=angleproject:889
Change-Id: I347ac21cfd0a56654a75fb41ac24c6c67ede3a05
Reviewed-on: https://chromium-review.googlesource.com/302351
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d470f472
|
2015-10-20T13:34:25
|
|
Don't ASSERT shader compilation success in ShaderGL.
This assertion was useful for debugging the initial implementation but it
is becoming an issue in tryjobs where tests will hang instead of fail due
to driver bugs.
BUG=angleproject:882
Change-Id: Ib23a0d16dfe250ea175a166b5e277bf07d80a2fa
Reviewed-on: https://chromium-review.googlesource.com/307460
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d2c52e3b
|
2015-10-14T17:07:05
|
|
Fix debug annotations and shaders.
The Program refactor inadvertantly broken Debug annotations. Fix this
by correctly passing the path to the temporary shader source in the
first "C" string argument to ShCompile, instead of as the first part
of the source string.
BUG=angleproject:1177
TEST=manual testing with MSVS
Change-Id: Ie77bb11b51645a474b542ddd2ae0f391e019e341
Reviewed-on: https://chromium-review.googlesource.com/306210
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
27746966
|
2015-10-14T18:53:35
|
|
Add missing include guard to FunctionsWGL.h
Change-Id: I603eb99219234bb0292432ec41ede011c9c7d3ca
Reviewed-on: https://chromium-review.googlesource.com/305830
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
adff67b5
|
2015-10-14T10:34:45
|
|
Re-land "Implements more pack/unpack states."
Pack: row length, skip rows, skip pixels.
Unpack: image height, skip images, skip rows, skip pixels.
Note that PBOs are not covered by this change.
Re-land with fix for test expectations.
BUG=angleproject:512
BUG=angleproject:1095
Change-Id: I71d8d3bd8fc1f2c75ca16ac2634d5eafcbd71f26
Reviewed-on: https://chromium-review.googlesource.com/305522
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c7473924
|
2015-10-14T14:33:19
|
|
Revert "Implements more pack/unpack states. Pack: row length, skip rows, skip pixels. Unpack: image height, skip images, skip rows, skip pixels. Note that PBOs are not covered by this change."
Expectations still not correct. This removes suppressions for two
failing tests:
functional.texture.specification.teximage3d_depth_pbo.depth_component32f_2d_array
dEQP-GLES3.functional.texture.specification.teximage3d_depth_pbo.depth32f_stencil8_2d_array
BUG=angleproject:512
BUG=angleproject:1095
This reverts commit 72e7013e68a24107b9082629fc52d59a78998eb2.
Change-Id: Id81b6e616e61535b8504890ce57591813e22af69
Reviewed-on: https://chromium-review.googlesource.com/305521
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
72e7013e
|
2015-10-01T17:19:45
|
|
Implements more pack/unpack states.
Pack: row length, skip rows, skip pixels.
Unpack: image height, skip images, skip rows, skip pixels.
Note that PBOs are not covered by this change.
BUG=angleproject:512
BUG=angleproject:1095
Change-Id: Ia2fd7e52615d4aa08011dd615fcc20b79672d355
Reviewed-on: https://chromium-review.googlesource.com/304908
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
4a3c2341
|
2015-10-08T12:58:45
|
|
Program: Clean up UBO info gathering.
The data size & block member info was getting messy, so clean up
how we query this from the Impl layer.
Also remove the register information from gl::UniformBlock, moving
it into the D3D-only world.
BUG=angleproject:1172
Change-Id: I40af658ebbd6b7c1a4251906a387ebcbb621cf77
Reviewed-on: https://chromium-review.googlesource.com/304150
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
e826b9f7
|
2015-10-09T16:41:06
|
|
Revert "Fixed compilation on mingw."
This causes some linker warnings. I don't think we should
add linker warnings to Chrome, so reverting this temporarily until
we can land your CL with the correct using of export keywords.
Please re-submit the fixed CL.
This reverts commit 566273222683314dfc8ac1cdb9bf6deb5d2b4c65.
Change-Id: I21fa623af31fac06de6afbefa50c9ea1ec157c15
Reviewed-on: https://chromium-review.googlesource.com/305000
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
000b2f49
|
2015-10-09T15:33:14
|
|
Revert "Implements more pack/unpack states. Pack: row length, skip rows, skip pixels. Unpack: image height, skip images, skip rows, skip pixels."
This is causing failures in dEQP-GLES3.functional.texture.specification.teximage3d_depth_pbo.depth_component24_2d_array
First failing build on the bot:
http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20dEQP%20%28NVIDIA%29/builds/3635
Please fix the failure and re-land your CL with the fix.
BUG=angleproject:512
BUG=angleproject:1095
This reverts commit f1bb3f0569d5ef41b17f8ad0add7308f9d0f0de1.
Change-Id: I30f61db888b0adf73a1d98bbeeb2428068119627
Reviewed-on: https://chromium-review.googlesource.com/304990
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f1bb3f05
|
2015-10-01T17:19:45
|
|
Implements more pack/unpack states.
Pack: row length, skip rows, skip pixels.
Unpack: image height, skip images, skip rows, skip pixels.
BUG=angleproject:512
BUG=angleproject:1095
Change-Id: I11e3bc05d23419b72c92b96aabd3f0bacd983626
Reviewed-on: https://chromium-review.googlesource.com/304370
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
af5756a1
|
2015-10-01T11:49:39
|
|
Only support ES3 if texture swizzling is available
On OSX 10.8 with an Intel HD 3000 we were wrongly exposing ES3 when
texture swizzling was not available.
BUG=angleproject:891
Change-Id: If71acdc1943ab2f013dc80cd28eab130c32fb201
Reviewed-on: https://chromium-review.googlesource.com/303392
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
f22c6b13
|
2015-08-31T13:28:12
|
|
Store WGL extensions in FunctionsWGL.
Add helpers for checking which extensions are available instead of
discarding the extension strings after function loading.
BUG=angleproject:1144
Change-Id: Ie3d209cd5f6f116bbedaa618a59a4c2d7ddda4d6
Reviewed-on: https://chromium-review.googlesource.com/296360
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f0aa8429
|
2015-09-29T15:08:34
|
|
Implement QueryGL.
Passes all tests in:
* dEQP-GLES3.functional.occlusion_query
* angle_end2end_tests
BUG=angleproject:887
Change-Id: I643ab4c28cb545de9e7b0e1740e3fd8e2aa9d3d9
Reviewed-on: https://chromium-review.googlesource.com/302338
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
56627322
|
2015-10-05T16:03:10
|
|
Fixed compilation on mingw.
Change-Id: I5734f789f25fbc6b9b90f2043459a3a5f72008c4
Reviewed-on: https://chromium-review.googlesource.com/303602
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
33bb5ad6
|
2015-10-05T13:16:41
|
|
Only apply uniform buffers referenced by the Program.
Continues to pass dEQP-GLES3.functional.ubo.*
Performance regression in draw call overhead is fixed.
BUG=angleproject:882
BUG=angleproject:1171
Change-Id: I1d827d70611c1bf743a7930796e31a54aca04b1e
Reviewed-on: https://chromium-review.googlesource.com/303473
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
01306fc7
|
2015-10-05T16:53:10
|
|
Revert "Implement program binary in ProgramGL."
Causing issues on AMD and Intel bots.
This reverts commit 6d8926691a8ed59add7602af602af3e6f7a81ab6.
Change-Id: Ifb395f78a6a44b874ac13da1f252f604a1a7b0bc
Reviewed-on: https://chromium-review.googlesource.com/303439
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6d892669
|
2015-10-02T09:57:30
|
|
Implement program binary in ProgramGL.
Verified by end2end tests and manually checking that chrome can load and
save program binaries.
BUG=angleproject:882
Change-Id: Ic7e4b443365af6ea2d9ce5b0ecfb685eac85f479
Reviewed-on: https://chromium-review.googlesource.com/303828
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
36b73909
|
2015-10-05T11:58:50
|
|
Fix standalone ninja build on Linux
Preprocessor conditions referring to undefined macros failed standalone
build which uses the -Werror=undef setting.
This same error has been in multiple patches, and reverting them would
cause test breakage, so fixing the issue is simpler than reverting.
Change-Id: I4a079ef5d823eed76ebdefa8be413f63d29a5f6a
Reviewed-on: https://chromium-review.googlesource.com/304020
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
4fbec003
|
2015-10-01T11:47:47
|
|
Check for GL_INVALID_INDEX instead of -1 for GetUniformIndices
While they have the same bit representation, the variable was unsigned
so the comparison would always fail, which triggered a compilation
warning.
BUG=
Change-Id: Idbbdb942b71d59f95e65c072dbbfdf31d14eda05
Reviewed-on: https://chromium-review.googlesource.com/303391
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
8bd4b6c5
|
2015-10-01T16:17:48
|
|
Load the ARB_sampler_objects entry points in FunctionsGL.
Load the sampler object entry points and limit supported ES version to 2
if samplers are not available.
BUG=angleproject:1162
Change-Id: Ida7cf0cc0a81dd3714d958a98efe0c6e973ecca2
Reviewed-on: https://chromium-review.googlesource.com/303770
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c46cc2f3
|
2015-10-01T17:16:20
|
|
Remove ProgramImpl::getBinaryFormat.
Because we only expose GL_ANGLE_program_binary, we're only allowed to use
the GL_PROGRAM_BINARY_ANGLE binary type. This should be enforced at the
GL level. If implementations wish to use multiple types of formats
internally, they are able to by writing those enums to their binaries.
BUG=angleproject:882
BUG=angleproject:1123
Change-Id: I43685958814e4333b7cef3952d92c1017dc885f8
Reviewed-on: https://chromium-review.googlesource.com/303827
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2b280922
|
2015-10-01T17:05:15
|
|
Remove the unused ProgramImpl::getShaderVersion method.
BUG=angleproject:882
BUG=angleproject:1123
Change-Id: Iace1d6c2c594f0b00c18d595f14cef9bce6f3595
Reviewed-on: https://chromium-review.googlesource.com/303826
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
25e563fe
|
2015-09-29T13:21:27
|
|
Add -Wnon-virtual-dtor and fix a warning.
BUG=
Change-Id: I234e3a963e110762bac2a89d146b60f028928fb5
Reviewed-on: https://chromium-review.googlesource.com/302487
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
5d124a69
|
2015-09-15T13:03:27
|
|
Support UBOs in RendererGL and ProgramGL.
Reland: fix compile warnings on Windows.
BUG=angleproject:882
BUG=angleproject:883
Change-Id: If4844d50d43ff9b765f64606e8f08d65a1afd9a4
Reviewed-on: https://chromium-review.googlesource.com/303431
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
cf2dbd91
|
2015-10-01T15:48:22
|
|
Revert "Support UBOs in RendererGL and ProgramGL."
Compile error.
This reverts commit 97d82b724b71be464f2aff377f056cade44fca94.
Change-Id: I71ae10cb01b8ded0297eaf4742fb1098ce02a9bb
Reviewed-on: https://chromium-review.googlesource.com/303303
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
97d82b72
|
2015-09-15T13:03:27
|
|
Support UBOs in RendererGL and ProgramGL.
BUG=angleproject:882
BUG=angleproject:883
Change-Id: I36f8ef42d87e289658a6ba4899380bc72b9bcebf
Reviewed-on: https://chromium-review.googlesource.com/299871
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f6ade2ec
|
2015-09-29T11:21:43
|
|
Implement GL_EXT_debug_marker for RendererGL.
Passes dEQP-GLES2.functional.debug_marker.*
Change-Id: I37f2b6724f32867d2e428613b1b6d9c8377c6d60
Reviewed-on: https://chromium-review.googlesource.com/302990
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
d4b5054d
|
2015-09-28T12:19:26
|
|
compiler: Rewrite do-while loops as while loops
This works around a Mac driver shader compiler bug that makes many
do-while loops cause GPU-hangs when ran.
BUG=angleproject:891
Change-Id: I29828d6ea9e887ad0ed0c577f1deb41fb632a900
Reviewed-on: https://chromium-review.googlesource.com/302465
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
afd7f0a8
|
2015-09-09T15:33:31
|
|
Explicitly enable framebuffer SRGB blending in StateManagerGL.
In DesktopGL, SRGB blending must be enabled or linear blending will be
used.
reland: Work around issues on AMD drivers where SRGB blending would be
used on clears of linear attachments.
Passes all dEQP-GLES3.functional.fragment_ops.blend.fbo_srgb.* tests (1106
new passing tests).
BUG=angleproject:883
BUG=angleproject:885
Change-Id: I974a55fe3acc77ac77e93f19c83ee3b76f784df2
Reviewed-on: https://chromium-review.googlesource.com/302336
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
543e7ff7
|
2015-09-29T14:15:15
|
|
Revert "Explicitly enable framebuffer SRGB blending in StateManagerGL."
More compile errors on mac.
This reverts commit 056fae4a01db306b8f9c1e57374e18ebffbdf8eb.
Change-Id: I579b9e50ded7240be4f488a48588a89ecb4bea44
Reviewed-on: https://chromium-review.googlesource.com/302571
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
056fae4a
|
2015-09-09T15:33:31
|
|
Explicitly enable framebuffer SRGB blending in StateManagerGL.
In DesktopGL, SRGB blending must be enabled or linear blending will be
used.
reland: Work around issues on AMD drivers where SRGB blending would be
used on clears of linear attachments.
Passes all dEQP-GLES3.functional.fragment_ops.blend.fbo_srgb.* tests (1106
new passing tests).
BUG=angleproject:883
BUG=angleproject:885
Change-Id: I6c2b4552c571707a8d8d80d3573bcb38797c3929
Reviewed-on: https://chromium-review.googlesource.com/302791
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ec3123bb
|
2015-09-28T19:21:01
|
|
Revert "Explicitly enable framebuffer SRGB blending in StateManagerGL."
Compilation failure on mac and linux.
This reverts commit e19d7f90355f02ac7a7cd0a2ac130e0859cd3cc7.
Change-Id: I638c3ffebb8c7ad0e3fe2e1e65d6212487bfc6ae
Reviewed-on: https://chromium-review.googlesource.com/302790
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e19d7f90
|
2015-09-09T15:33:31
|
|
Explicitly enable framebuffer SRGB blending in StateManagerGL.
In DesktopGL, SRGB blending must be enabled or linear blending will be
used.
reland: Work around issues on AMD drivers where SRGB blending would be
used on clears of linear attachments.
Passes all dEQP-GLES3.functional.fragment_ops.blend.fbo_srgb.* tests (1106
new passing tests).
BUG=angleproject:883
BUG=angleproject:885
Change-Id: I03fbb0910ce414552ba841099a177446d0ace7b6
Reviewed-on: https://chromium-review.googlesource.com/301702
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0af0b81d
|
2015-09-23T13:56:25
|
|
Add a SamplerImpl object and implement it for the GL backend.
Passes all tests in dEQP-GLES3.functional.samplers
BUG=angleproject:1162
Change-Id: I7713031a677aac2b41889a6b4297ab512e184863
Reviewed-on: https://chromium-review.googlesource.com/301582
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
69cce580
|
2015-09-17T13:20:36
|
|
Split the SamplerState struct into SamplerState and TextureState.
SamplerState is now only the members that are overridden by a sampler
object, this makes it easy to update those specific members.
Opted for getters and setters for each member in Texture and Sampler
because it will be required to enable dirty bits for these states.
Added maxAnisotropy to the SamplerState instead of texture state. The
sampler objects extension mentions it should be there.
BUG=angleproject:1162
Change-Id: I5aa6d702bd5915ee9df1976afef3c8c1f69d27c8
Reviewed-on: https://chromium-review.googlesource.com/300490
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
006cbc5b
|
2015-09-23T16:47:54
|
|
Remove rx::ShaderSh and move the shared code to the GL.
The GL layer can interact with the translator directly, to query all
the active shader variables and call ShCompile.
BUG=angleproject:1159
Change-Id: I334a9bef28f93cf85dd8cac0fb8542ac567cc3ec
Reviewed-on: https://chromium-review.googlesource.com/299877
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
91445bce
|
2015-09-23T16:47:53
|
|
Make a shader Shader::Data state structure.
This design follows the similar designs for Program, Framebuffer, etc.
Because of the current design, share a mutable pointer with the Impl
so the patch becomes a bit smaller and easier to review. In a follow-
up patch we can move the shared code into the GL layer.
BUG=angleproject:1159
Change-Id: Ib243e74779f23be51cdca80f1b5c6e5f3e36059d
Reviewed-on: https://chromium-review.googlesource.com/299876
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
046e53e3
|
2015-09-23T16:47:52
|
|
Add an interm ShaderSh class.
This class logic will eventually move to the GL layer. Keep it
in the Renderer layer for now for refactoring purposes.
BUG=angleproject:1159
Change-Id: I91843099367f9a0293cc43ab98626bf79eb75ebf
Reviewed-on: https://chromium-review.googlesource.com/299875
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3d3d2f20
|
2015-09-23T16:47:51
|
|
Re-re-land "Move sampler validation to the GL layer."
This previously was D3D-only, but is required for every draw call.
This completes the work of removing the D3D-specific Impl methods
from ProgramImpl.
Also add several regression tests to cover texture and sampler
validation.
Re-land with a fix for duplicate sampler active uniforms.
Re-re-land with a fix for a test comparison warning on Linux.
BUG=angleproject:1123
Change-Id: Iaf7b33861c07b9ceed4bd53ac2f010d35f05df45
Reviewed-on: https://chromium-review.googlesource.com/301712
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
260efc21
|
2015-09-23T16:45:54
|
|
Revert "Explicitly enable framebuffer SRGB blending in StateManagerGL."
Causing failures on AMD OpenGL drivers for sRGB clears.
This reverts commit 04b89c975b3c7f6b86191d0255136a8a798f0b66.
Change-Id: I51ee856d1c4d37882e5b1d1926415c398fa7ff5c
Reviewed-on: https://chromium-review.googlesource.com/301721
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6d246510
|
2015-09-23T18:04:10
|
|
Revert "Re-land "Move sampler validation to the GL layer.""
Build failure on Linux:
In file included from ../../third_party/angle/src/tests/gl_tests/UniformTest.cpp:7:
In file included from ../../third_party/angle/src/tests/test_utils/ANGLETest.h:10:
../../testing/gtest/include/gtest/gtest.h:1392:16: error: comparison of integers of different signs: 'const int' and 'const unsigned int' [-Werror,-Wsign-compare]
if (expected == actual) {
~~~~~~~~ ^ ~~~~~~
../../testing/gtest/include/gtest/gtest.h:1422:12: note: in instantiation of function template specialization 'testing::internal::CmpHelperEQ<int, unsigned int>' requested here
return CmpHelperEQ(expected_expression, actual_expression, expected,
^
../../third_party/angle/src/tests/gl_tests/UniformTest.cpp:487:5: note: in instantiation of function template specialization 'testing::internal::EqHelper<false>::Compare<int, unsigned int>' requested here
EXPECT_EQ(GL_SAMPLER_2D, type);
^
BUG=angleproject:1123
This reverts commit 6cbf4385280c4c1dd97f0882ecb18dbc4c341fd4.
Change-Id: I95279b37d253e3ea78faa53f3773f2dc3d17df95
Reviewed-on: https://chromium-review.googlesource.com/302030
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
eb5ea077
|
2015-09-11T11:21:00
|
|
Implements GL_EXT_unpack_subimage and GL_NV_pack_subimage.
Pack/unpack subimages is core features of GLES3. Those 2 extensions expose
them to GLES2.
BUG=angleproject:512
Change-Id: I6834cf5d4a91bc3430c60dcec29c449826fd6d93
Reviewed-on: https://chromium-review.googlesource.com/299790
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Minmin Gong <mgong@microsoft.com>
|
|
04b89c97
|
2015-09-09T15:33:31
|
|
Explicitly enable framebuffer SRGB blending in StateManagerGL.
In DesktopGL, SRGB blending must be enabled or linear blending will be
used.
Passes all dEQP-GLES3.functional.fragment_ops.blend.fbo_srgb.* tests (1106
new passing tests).
BUG=angleproject:883
BUG=angleproject:885
Change-Id: I0dfb744faa811f10be47c5bd8295b368baf3b04b
Reviewed-on: https://chromium-review.googlesource.com/298620
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
83f349ea
|
2015-09-23T09:50:36
|
|
Remove CompilerImpl and merge code to gl::Compiler.
This class uses no Impl-specific code. We can also do a similar
code relocation for the gl::Shader class, but in several steps
because it is a bit more complex.
BUG=angleproject:1159
Change-Id: I4d3ce3253df0a2bdee1d98e46cfd4b999d86be6e
Reviewed-on: https://chromium-review.googlesource.com/299874
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6cbf4385
|
2015-09-22T19:12:11
|
|
Re-land "Move sampler validation to the GL layer."
This previously was D3D-only, but is required for every draw call.
This completes the work of removing the D3D-specific Impl methods
from ProgramImpl.
Also add several regression tests to cover texture and sampler
validation.
Re-land with a fix for duplicate sampler active uniforms.
BUG=angleproject:1123
Change-Id: Iefef06e7901873c98bf2ba7864efd16a4c6435d3
Reviewed-on: https://chromium-review.googlesource.com/301581
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3edfe034
|
2015-09-04T16:38:24
|
|
Support primitive restart in RendererGL.
Store index ranges in a new struct that tracks how many real indices were
seen. Update index caching to key on primitive restart being enabled and
update index counting functions to skip primitive restart indicies when
needed.
Passes dEQP-GLES3.functional.primitive_restart.*
Change-Id: Id1e25a5adcdcd4e998836e8ff6679c64be4c3066
Reviewed-on: https://chromium-review.googlesource.com/297770
Tryjob-Request: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3aa23a7c
|
2015-09-22T19:03:33
|
|
Revert "Move sampler validation to the GL layer."
Probably causing failures in the dEQP-GLES2 GL back-end tests:
dEQP-GLES2.functional.uniform_api.info_query.basic.sampler2D_both
BUG=angleproject:1123
This reverts commit 6fa156b66da2090c98f1a044a948694c7ac83324.
Change-Id: I3cc993c34aae4a108037ce81709b71d16ece814e
Reviewed-on: https://chromium-review.googlesource.com/301580
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6fa156b6
|
2015-09-22T10:17:01
|
|
Move sampler validation to the GL layer.
This previously was D3D-only, but is required for every draw call.
This completes the work of removing the D3D-specific Impl methods
from ProgramImpl.
Also add several regression tests to cover texture and sampler
validation.
BUG=angleproject:1123
Change-Id: I167cbc8f47b4a397d2ae6cc507bdac35168bcacd
Reviewed-on: https://chromium-review.googlesource.com/299400
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fdaad25e
|
2015-09-16T09:01:51
|
|
ANGLE: Assert to check pointer
The assert was checking the value (which is unitialized), rather than
the pointer.
Change-Id: Id8d57953b32b62739e64d88dedd26f0b15a2385f
Reviewed-on: https://chromium-review.googlesource.com/299819
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Hendrik Wagenaar <hendrikw@chromium.org>
|
|
ee48376c
|
2015-09-15T13:12:07
|
|
Update to the latest versions of the GL and EGL headers.
Add GLES 3.1 and 3.2 headers.
Remove GLES 3.0 extension headers and entry point files.
Re-land fixes double define from different style defines in libGLESv2.gypi
and other projects.
Re-land fixes missing defines in angle_util project in gn.
Change-Id: I1952413cd4390e6f5450df809f8f5867bf6f49e2
Reviewed-on: https://chromium-review.googlesource.com/299771
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0393310f
|
2015-09-15T16:59:59
|
|
Revert "Update to the latest versions of the GL and EGL headers."
Issues with GN build.
This reverts commit 8284436798dd184afe61cbb586185cb68e503d6f.
Change-Id: I99d186019135bbbe250e95c9567854108d31c556
Reviewed-on: https://chromium-review.googlesource.com/299870
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e7ed96c3
|
2015-09-14T09:33:38
|
|
Implement Pbuffers for the CGL backend, using renderbuffers
The CGL pbuffers have been deprecated since OSX 10.7 but our testing
requires that an EGL implementation supports pbuffers. This commit
implement pbuffers on top of renderbuffer using only OpenGL.
BUG=angleproject:891
Change-Id: Ie8e09c9300a00800600c3a77044ba05205f805da
Reviewed-on: https://chromium-review.googlesource.com/299442
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|