This extension exposes the desktop GL glLogicOp function as a GLES
extension. This is supported by Vulkan through the logicOp feature as
well.
The goal is to directly use this extension in GLES1 emulation where the
backend supports it, avoiding a more costly fallback.
Bug: angleproject:3862
Change-Id: I7ed436cdf401437157ca9724168849b4c819b91b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3898310
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Add a section with instructions on adding
SPIRV-Cross in RenderDoc shader viewer tools.
This allows us to view GLSL shader source code
in renderdoc captures.
Add a link on how to download RenderDoc
Android Dependency on Linux.
Bug: angleproject:6509
Change-Id: I5f1cbff55a8b43983dbc1c965314e1ad2213a399
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3888579
Reviewed-by: Solti Ho <solti@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
To work in Chromium requires a bootstrap step
so added a link to those steps
Bug: angleproject:7586
Change-Id: Ifc590f565d7e707c98479a9a2dd21378662d534f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3842861
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
This CL contains learnings from a recent roll of which Chromium-local
version of VMA is used for ANGLE, and how it rolls into Android.
Bug: b/238213234
Change-Id: I50b98e984e68ee0f2ff06fc24847d4a4a2c8fb1d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3811861
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
Plumbs through "GL_ANGLE_shader_pixel_local_storage" and
"GL_ANGLE_shader_pixel_local_storage_coherent" extension strings
advertised by ANGLE and stubs out an initial spec document. This change
doesn't add any new procedures or shader constructs, but it does allow
the PLS tests to start checking for the real extension strings and
requiring the GL_ANGLE_shader_pixel_local_storage extension.
Bug: angleproject:7279
Change-Id: I36877fe4117185a2121f803288123cd69a447cf3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3739590
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Makes it less tedious to specify multiple widgets. In particular, it
also makes it possible to select many widgets on Android through
`adb shell setprop debug.angle.overlay` which has a hard limit of 92
characters for the property.
Bug: angleproject:5881
Change-Id: I93bd166cd3dbf8f87e5c6a5fce3f86ebb3e379a3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697437
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Added new extension GL_EXT_base_instance to registry_xml.py
and auto-generated the entry point function calls for the
following functions introduced by the extension:
* GL_DrawElementsInstancedBaseVertexBaseInstanceEXT
* GL_DrawElementsInstancedBaseInstanceEXT
* GL_DrawArraysInstancedBaseInstanceEXT
Bug: angleproject:6983
Change-Id: I36167faf3ca98e42acf787dbf09ee7052e15e358
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3691952
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Faye Zhang <ffz@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Now includes data for Pixel 6 on Android 13.
Bug: angleproject:7375
Change-Id: I115f8ead1cbfeb55b7314164409b262f58078ca5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3684029
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
This will facilitate testing. Also moves some feedback loop tests
from FramebufferTest to a specialized test class.
Bug: angleproject:4778
Bug: angleproject:4969
Change-Id: I61235f2663a58644bf506254a869f550f1706de3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3634726
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Appears to drastically reduce runtime variability. Example:
Max shard runtime (28m 15s) + overhead (10s): 28m 24s (shard #8)
Min shard runtime (3m 5s) + overhead (20s): 3m 24s (shard #6)
-->
Max shard runtime (4m 6s) + overhead (11s): 4m 17s (shard #0)
Min shard runtime (3m 7s) + overhead (10s): 3m 17s (shard #6)
--deqp-log-flush is enabled by default (only disabled for multi-process
execution http://anglebug.com/5157) and together with
--deqp-log-shader-sources which is also enabled by default results in a
huge number of line-by-line flushes degradng filesystem performance.
Example strace capture in a degraded state:
[pid 21208] 10:55:51.194033 write(77, "</ShaderSource>\n <InfoLog>", 28) = 28 <0.181028>
[pid 21208] 10:55:51.375879 write(77, "</InfoLog>\n</FragmentShader>\n</S"..., 78) = 78 <0.179196>
[pid 21208] 10:55:51.555790 write(77, "\" Description=\"Vertex shader com"..., 41) = 41 <0.177602>
~180ms *per line written* !!! (28, 78, 41 characters...)
Under normal conditions these are way down in the microsecond range:
[pid 11412] 10:55:56.689894 write(72, "</ShaderSource>\n <InfoLog>", 28) = 28 <0.000020>
[pid 11412] 10:55:56.689957 write(72, "</InfoLog>\n</FragmentShader>\n</S"..., 78) = 78 <0.000026>
I think that the reason for this is some peculiarity of the /sdcard
filesystem which uses fuse:
% df -h /sdcard/chromium_tests_root/
/dev/fuse 50G 3.7G 46G 8% /mnt/user/0/emulated
As opposed to block/dm-N of the (non-app accessible) temp directory:
% df -h /data/local/tmp/
/dev/block/dm-9 50G 3.7G 46G 8% /data_mirror/cur_profiles
And the app data directory appears to be using the same filesystem:
% df -h /data/data/com.android.angle.test/
/dev/block/dm-9 50G 3.7G 46G 8% /data_mirror/cur_profiles
As far as I can tell the degradation of performance does not happen on
this filesystem despite the huge amount of small writes. Disabling deqp
log flushes when running on bots probably makes sense too but I'd like
to first confirm the impact of this CL separately.
Bug: chromium:1217662
Bug: angleproject:7242
Change-Id: I507e4c330fd4e1f4ce05f9768506f905e142f835
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3615081
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
Visual Studio Installer lists Windows 10 SDK versions in it's
"Installation details", when modifiying the installation. The list might
not contain the latest version of the SDK, which can be found under
"Individual components" instead.
Bug: angleproject:7018
Change-Id: I6a28afe4690a3c41667e4acb7cac4fe25495f779
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3571964
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Include the following GN arg to print all GLES and EGL commands:
angle_enable_trace_events = true
Bug: angleproject:7126
Change-Id: I78eb061c10ed519d6a0b0357eea11567d1cfb518
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3551656
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
We can piggy-back on this extension to report internal ANGLE
performance counters to the ANGLE tests.
Includes a minor variable de-duplication in the EP generator.
Bug: angleproject:4918
Change-Id: I4a76aea957b423a36a90349643bd50a4e1905849
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3497537
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
https://crrev.com/c/3163360 disabled capture when no vars
are specified by changing the ANGLE_CAPTURE_FRAME_END
default from 10 to 0.
Bug: angleproject:6397
Change-Id: I22efceafa412fabf283542cb05f54a84d308931d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3503699
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
This CL:
* Updates the file list for captures
* Remove outdated references to the source contents
* Adds a section with steps that allow running your capture on
Android via our trace replay harness (angle_perftests)
Bug: angleproject:1944
Change-Id: Ied15a8af004681d7b7b626a27b7bdeeee727dd4f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3500905
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Add instructions on how to
1. Install Android dependencies on Windows
2. Install build tools on Windows
3. Build errors and resolutions
4. Steps to build and use RenderDoc for Android on Windows
Bug: b/210134963
Change-Id: I707ddf68f5f834fcacd106fd0e3041b8757ae05c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3441634
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Add notes on how to set debug overlay environment variables on Android
build.
Bug: angleproject:6806
Change-Id: I129080cf5671b19890cdb05dadc72a46f06aa816
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3441082
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Mention that you must set ANGLE_CAPTURE_START_FRAME
to 1 or greater.
Bug: angleproject:6945
Change-Id: I3ff999749e62e1f4084656ada5d2f23c082641fe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3413172
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
On ARM, coherent is the default behavior of framebuffer fetch, so
we can expose the GL extension.
Tests: Dead By Daylight app and trace
Bug: b/201764768
Bug: angleproject:6870
Bug: angleproject:6872
Change-Id: I0f98c57e20619d73d1507c4655e7f9bb8c10a53a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3371244
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
This includes the update to the NV 1660s, and Intel driver update,
and automatically gathered SwiftShader data.
Bug: angleproject:6853
Change-Id: I481918105fd0e0224a2e2ddf5175b38e97918195
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360784
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
LaCrOS, which is same as ChromeOS, relies on this
extension and uses that with WebGL content.
However, when LaCrOS uses ANGLE, the extension is
not exposed and the WebGL content is y-inverted as
direct scanout is always used.
There are two bugs - 1) ANGLE should expose the
extension so that direct scanout is possible
(this CL fixes the issue. 2) LaCrOS shouldn't rely
on the extension if it's not available (a bug to
be fixed in Chromium).
This particular CL consists of autogen files with
framebufferParameteriMESA &&
getFramebufferParameterivMESA in Context
marked as UNIMPLEMENTED. And also unimplemented
validation.
Bug: chromium:1231934
Change-Id: Id617846b0412f579df5b4ace6cb33c1ec6d403df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3343492
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Maksim Sisov <msisov@igalia.com>
These are builtin uniforms removed in
https://github.com/KhronosGroup/WebGL/pull/3278
Decouple them from the original ANGLE_base_vertex_base_instance
extension.
Make a new ANGLE_base_vertex_base_instance_shader_builtin
extension for these builtin uniforms.
Bug: angleproject:3402
Change-Id: I77b93917976ce435db9c578c0ade37bff18a42b0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3290304
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Add the extension ANGLE_rgbx_internal_format, which exposes the ANGLE
internal format GL_RGBX8_ANGLE. The format GL_RGBX8_ANGLE enables
emulating RGB8 formats with RGBA8 within ANGLE.
This also renames the format GL_RGBX8_ANGLEX to GL_RGBX8_ANGLE, since
it's being exposed.
Bug: angleproject:6690
Test: Texture2DTestES3.TextureRGBXImplicitAlpha1
Change-Id: I5548a3578a14e2f2a4006bbf59983b01f694b7f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3296625
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
* Auto-generated the code to lay the foundation for
the following functions:
* multiDrawArraysIndirect()
* multiDrawElementsIndirect()
Bug: angleproject:6439
Change-Id: I7ab5111692376229515e0d6d9e6148909ce9a8a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3276042
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
This file lists a number of commonly overriden build options for
development or special platforms, but was mistakenly taken as a set of
"recommended" options.
Bug: angleproject:1944
Change-Id: Ia50b45724797d5ab071936997b485f9f80a72704
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3234079
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
This extension codifies expected behaviour on Android, where some
applications don't declare shader outputs that are active with the
Framebuffer.
Bug: angleproject:6566
Change-Id: I3538a0aca25b6567e4b11e40d4611f1b240579c7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3226724
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
-Mark the document OpenGL Insights chapter on ANGLE as historical
reference.
-Modify the visual studio build instruction in ANGLE'S orientation link.
-Point the Start Projects link to the angle starter bug lists.
-Remove doc/Starter-Projects.md.
(most bugs listed in Starter-Projects.md are closed.
mark bugs 2734, 2556, 2506 as starter bugs.
remove link to WebGL conformance on Windows as they are outdated)
-Remove IRC channel join info.
-Add more instructions on how to join Angle Slack channel.
-Add warning indicating the iframe tags are not displayed properly in
doc/dEQP-Charts.md.
Bug: angleproject:6509
Change-Id: Idd4364fe48b506b44d3a2b40fa0e6ebd9e810a1b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3204132
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
This is a follow up change based on comments Jamie
provided in a previous change list:
https://chromium-review.googlesource.com/c/angle/angle/+/3204430.
Fixes include:
1. Wrap each line into 80 characters.
2. Add links to project files.
3. Add one more future work.
4. Modify the two simple wordings.
Bug: angleproject:6508
Change-Id: I84a5694682d8871ebb46c4dfe245399021e0cff7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3219715
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Import the documentation go/vangle-debug-overlay as markdown
Bug: angleproject:6508
Change-Id: I1ecf9e6d4fd2c1b47c6e8f367390fcb72d7ecfe7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3204430
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Thought this was taken care of with `gclient sync` but it seems like a
manual download is needed now.
Bug: angleproject:6517
Change-Id: I87499149b810c873827883628104963178a14fed
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3203171
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>