- 09 Sep, 2019 2 commits
-
-
James Darpinian authored
WebKit's iOS and Mac builds do conditional compilation with preprocessor directives rather than relying on the build system. Cocoa.h is not available on iOS, so these Objective-C files must be conditionally compiled. Bug: angleproject:3439 Change-Id: I8a1228f5b14ca6441c7d9a7f1c3f45d060003135 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1785653 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/b218ad19949f..76261e2a7df1 Created with: gclient setdep -r ./third_party/spirv-tools/src@76261e2a7df1 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: Iba5eb10163a59bb9b76fa813b5b3d21288b234df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1791787Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
- 07 Sep, 2019 1 commit
-
-
Shahbaz Youssefi authored
Bug: angleproject:3450 Change-Id: Iee5360a7b9cced403c08b7883fa11420e250244f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1784065Reviewed-by:
Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
- 06 Sep, 2019 4 commits
-
-
Geoff Lang authored
By blocking the attachment at this point, it doesn't allow for the resource to have a depth stencil format later. BUG=997702 Change-Id: Iec5243012cb9a9527c5b1467d44c393b0dc6bddc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1780898 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jonah Ryan-Davis <jonahr@google.com>
-
Tim Van Patten authored
The following structs are being refactored and moved into the parent struct ShaderVariable: VariableWithLocation Uniform Attribute OutputVariable InterfaceBlockField Varying Bug: angleproject:3899 Test: CQ Change-Id: I389eb3ab4ed44a360e09fca75ecc78d64a277f83 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1785877Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/34953810a62c..664ad418f845 Created with: gclient setdep -r ./third_party/glslang/src@664ad418f845 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I59ec3f0481e8c8db214527f32b592eeda9260e13 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1788945Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/19b256616d96..b218ad19949f Created with: gclient setdep -r ./third_party/spirv-tools/src@b218ad19949f If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: Ib4e442af6583b4dcfb0ed9e0eda74e857447cfa7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1788946Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
- 05 Sep, 2019 6 commits
-
-
Jamie Madill authored
Adds tools/memory to standalone DEPS. Bug: angleproject:3897 Change-Id: I744e5816156e6e1df78033201eb7fd56083c1bc6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1787997Reviewed-by:
Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Only need GLuints now for GLsyncs. Bug: angleproject:3611 Change-Id: Id8b11851d8d5d30e6743433c772b9fa85eb875f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1783406Reviewed-by:
Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jiacheng Lu authored
1. Add extension 'GL_ANGLE_program_binary' to registry_xml.py, this extension brings enum 'GL_PROGRAM_BINARY_ANGLE' which ANGLE already supports. 2. Add a fallback for converting GLenum and GLbitfield to string, for any GLenum value not found in the conversion table, write out its hex value instead of 'EnumUnknown'. It prevents GLenum from some unregistered extensions breaking the frame capture. Bug: angleproject:3804 Change-Id: I36a676305fbbcff2173bbc9f818ff589abe51434 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1775028 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by:
Tobin Ehlis <tobine@google.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/56f61ccceffa..34953810a62c Created with: gclient setdep -r ./third_party/glslang/src@34953810a62c If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: Ic573baad0b7097a415345bc2d47b8274b276e69f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1787397Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/9b3cc3e05337..19b256616d96 Created with: gclient setdep -r ./third_party/spirv-tools/src@19b256616d96 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I2ad5c402e8a0e70858c706fad3a3dc9188210961 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1787398Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
Brandon Schade authored
ANGLE_DEFAULT_PLATFORM environment variable now accepts 'null' as a valid option. This will set the default platform type to the null backend. Bug: angleproject:3893 Change-Id: Ieddcdf3ae840f927c1b276e56f3b753b67d9b73d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1784062Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Mohan Maiya <m.maiya@samsung.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
-
- 04 Sep, 2019 5 commits
-
-
Mingyu Hu authored
Adding new parameters for extension without adding any real code change. Since no new code paths were added, we expect all tests to pass as before. Bug: angleproject:980428 Change-Id: I551b46a66f422eabd357fd021e00cf266a991efb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1772377 Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by:
Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Courtney Goeltzenleuchter authored
Many implementations provide OES_depth_texture behavior if the texture was specified with a non-sized format (e.g. GL_DEPTH_COMPONENT). This change implements that behavior for Vulkan and adds a couple of tests to verify it. Bug: angleproject:3890 Change-Id: I005b1eaa30db033f7d78a5cf2236aab7f442b7f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1764301 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This prevents a presubmit error on Windows. Seems like the binary file differs somehow. Remove it from the hashes until we can investigate. Bug: angleproject:3892 Change-Id: I4f06dbe37e3e02f9905654d202a8b4fba78b9323 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1783403Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/2c5ed16ba97d..9b3cc3e05337 Created with: gclient setdep -r ./third_party/spirv-tools/src@9b3cc3e05337 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I0ab4e476b5c5090236e1fa9aba19cc56402e9736 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1784379Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
Todd Eisenberger authored
Bug: None Change-Id: Ieadbe830847068c8e9dc96773dbb9b65c8b9ccd8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1783418Reviewed-by:
Michael Spang <spang@chromium.org> Commit-Queue: Michael Spang <spang@chromium.org>
-
- 03 Sep, 2019 7 commits
-
-
Jiacheng Lu authored
Bug: angleproject:3804 Change-Id: Ib8fbec89f28645790df98a184f47303f4a8d64c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1779343 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Tobin Ehlis <tobine@google.com>
-
Jiacheng Lu authored
Bug: angleproject:3804 Change-Id: I0454533eff13218a6aa1e1672ffcd0e76aedb399 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1769716 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
This is a reland of e54d0f90 This was reverted due to a build failure as a result of a missing virtual destructor in the widget base class. Original change's description: > Vulkan: Debug overlay > > A debug overlay system for the Vulkan backend designed with efficiency > and runtime configurability in mind. Overlay widgets are of two > fundamental types: > > - Text widgets: A single line of text with small, medium or large font. > - Graph widgets: A bar graph of data. > > Built on these, various overlay widget types are defined that gather > statistics. Five such types are defined with one widget per type as > example: > > - Count: A widget that counts something. VulkanValidationMessageCount > is an overlay widget of this type that shows the number of validation > messages received from the validation layers. > - Text: A generic text. VulkanLastValidationMessage is an overlay > widget of this type that shows the last validation message. > - PerSecond: A value that gets reset every second automatically. FPS is > an overlay widget of this type that simply gets incremented on every > swap(). > - RunningGraph: A graph of last N values. VulkanCommandGraphSize is an > overlay of this type. On every vkQueueSubmit, the number of nodes in > the command graph is accumulated. On every present(), the value is > taken as the number of nodes for the whole duration of the frame. > - RunningHistogram: A histogram of last N values. Input values are in > the [0, 1] range and they are ranked to N buckets for histogram > calculation. VulkanSecondaryCommandBufferPoolWaste is an overlay > widget of this type. On vkQueueSubmit, the memory waste from command > buffer pool allocations is recorded in the histogram. > > Overlay font is placed in libANGLE/overlay/ which gen_overlay_fonts.py > processes to create an array of bits, which is processed at runtime to > create the actual font image (an image with 3 layers). > > The overlay widget layout is defined in overlay_widgets.json which > gen_overlay_widgets.py processes to generate an array of widgetss, each > of its respective type, and sets their properties, such as color and > bounding box. The json file allows widgets to align against other > widgets as well as against the framebuffer edges. > > Two compute shaders are implemented to efficiently render the UI: > > - OverlayCull: This shader creates a bitset of Text and Graph widgets > whose bounding boxes intersect a corresponding subgroup processed by > OverlayDraw. This is done only when the enabled overlay widgets are > changed (a feature that is not yet implemented) or the surface is > resized. > - OverlayDraw: Using the bitsets generated by OverlayCull, values that > are uniform for each workgroup (set to be equal to hardware subgroup > size), this shader loops over enabled widgets that can possibly > intersect the pixel being processed and renders and blends in texts > and graphs. This is done once per frame on present(). > > Currently, to enable overlay widgets an environment variable is used. > For example: > > $ export ANGLE_OVERLAY=FPS:VulkanSecondaryCommandBufferPoolWaste > $ ./hello_triangle --use-angle=vulkan > > Possible future work: > > - On Android, add settings in developer options and enable widgets based > on those. > - Spawn a small server in ANGLE and write an application that sends > enable/disable commands remotely. > - Implement overlay for other backends. > > Bug: angleproject:3757 > Change-Id: If9c6974d1935c18f460ec569e79b41188bd7afcc > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1729440 > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> Bug: angleproject:3757 Change-Id: I47915d88b37b6f882c686c2de13fca309a10b572 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1780897Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
Mingyu Hu authored
Adding code in ANGLETestEnvironment::TearDown() to release fixtures if exists. Bug: angleproject:3875 Change-Id: I0d6ad9b8c72937b20a4c3033b86eb667b546e0c3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1778841Reviewed-by:
Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
-
Shahbaz Youssefi authored
Bug: angleproject:1944 Change-Id: I238843992381c4dab60cca7f1552d8db82f2b0f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1779207Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/92f5afdee0ab..56f61ccceffa Created with: gclient setdep -r ./third_party/glslang/src@56f61ccceffa If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: I4633463b18d9570a2254216d74b6835227a28077 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1780945Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/65e362b7ae2a..2c5ed16ba97d Created with: gclient setdep -r ./third_party/spirv-tools/src@2c5ed16ba97d If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC jmadill@chromium.org,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@chromium.org,jmadill@google.com Change-Id: Ibd0e982c871f78be13a6a3d63a57b4309fbc9edb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1782118Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
- 02 Sep, 2019 9 commits
-
-
Jamie Madill authored
Completes a roll started in August. Bug: angleproject:3792 Change-Id: Ia8b80fc2fbc0f85310325b2c54e80a0db722ba44 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1781620Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Now that the DEPS roller is fixed this should not be able to break the CQ. Bug: angleproject:3128 Change-Id: I0f51b5d8a7b71859cced335ca9bd6ad155637ec5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1781619 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
dEQP-GLES2.functional.depth_stencil_clear.depth_scissored_masked dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_center dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_corner dEQP-GLES2.functional.rasterization.primitives.line* dEQP-GLES2.functional.texture.mipmap.cube.generate.* dEQP-GLES2.functional.shaders.builtin_variable.pointcoord dEQP-GLES2.functional.texture.mipmap.cube.projected.nearest_linear Bug: angleproject:2463 Bug: angleproject:2609 Bug: angleproject:2727 Bug: angleproject:2830 Bug: angleproject:3307 Bug: angleproject:3241 Bug: angleproject:3253 Change-Id: I76a0ca0e6a87c5a81f9209960e94fbd39d9b2484 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1781618Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jiacheng Lu authored
Bug: angleproject:3804 Change-Id: I7ca86089fe1e72c136c0fc1947ad43cecee122eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1769544 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
MaxTextureSizeTest.SpecificationTexImage Bug: angleproject:2690 Change-Id: I19aad34e7213fe34af434f368968a06adc31ab55 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1781617Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
The test is failing since the suppression was lifted. BUG=angleproject:3879 Change-Id: Ic2d45db7f7e2388c0c0040183c8760ee6a8fcb08 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1778863 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
This reverts commit e54d0f90. Reason for revert: causes compile failure on Linux CFI bot. Sample build: https://ci.chromium.org/p/chromium/builders/ci/Linux%20CFI/14810 Sample log: https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket.appspot.com/8903575125463586160/+/steps/compile/0/stdout?format=raw Original change's description: > Vulkan: Debug overlay > > A debug overlay system for the Vulkan backend designed with efficiency > and runtime configurability in mind. Overlay widgets are of two > fundamental types: > > - Text widgets: A single line of text with small, medium or large font. > - Graph widgets: A bar graph of data. > > Built on these, various overlay widget types are defined that gather > statistics. Five such types are defined with one widget per type as > example: > > - Count: A widget that counts something. VulkanValidationMessageCount > is an overlay widget of this type that shows the number of validation > messages received from the validation layers. > - Text: A generic text. VulkanLastValidationMessage is an overlay > widget of this type that shows the last validation message. > - PerSecond: A value that gets reset every second automatically. FPS is > an overlay widget of this type that simply gets incremented on every > swap(). > - RunningGraph: A graph of last N values. VulkanCommandGraphSize is an > overlay of this type. On every vkQueueSubmit, the number of nodes in > the command graph is accumulated. On every present(), the value is > taken as the number of nodes for the whole duration of the frame. > - RunningHistogram: A histogram of last N values. Input values are in > the [0, 1] range and they are ranked to N buckets for histogram > calculation. VulkanSecondaryCommandBufferPoolWaste is an overlay > widget of this type. On vkQueueSubmit, the memory waste from command > buffer pool allocations is recorded in the histogram. > > Overlay font is placed in libANGLE/overlay/ which gen_overlay_fonts.py > processes to create an array of bits, which is processed at runtime to > create the actual font image (an image with 3 layers). > > The overlay widget layout is defined in overlay_widgets.json which > gen_overlay_widgets.py processes to generate an array of widgetss, each > of its respective type, and sets their properties, such as color and > bounding box. The json file allows widgets to align against other > widgets as well as against the framebuffer edges. > > Two compute shaders are implemented to efficiently render the UI: > > - OverlayCull: This shader creates a bitset of Text and Graph widgets > whose bounding boxes intersect a corresponding subgroup processed by > OverlayDraw. This is done only when the enabled overlay widgets are > changed (a feature that is not yet implemented) or the surface is > resized. > - OverlayDraw: Using the bitsets generated by OverlayCull, values that > are uniform for each workgroup (set to be equal to hardware subgroup > size), this shader loops over enabled widgets that can possibly > intersect the pixel being processed and renders and blends in texts > and graphs. This is done once per frame on present(). > > Currently, to enable overlay widgets an environment variable is used. > For example: > > $ export ANGLE_OVERLAY=FPS:VulkanSecondaryCommandBufferPoolWaste > $ ./hello_triangle --use-angle=vulkan > > Possible future work: > > - On Android, add settings in developer options and enable widgets based > on those. > - Spawn a small server in ANGLE and write an application that sends > enable/disable commands remotely. > - Implement overlay for other backends. > > Bug: angleproject:3757 > Change-Id: If9c6974d1935c18f460ec569e79b41188bd7afcc > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1729440 > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=geofflang@chromium.org,syoussefi@chromium.org,jmadill@chromium.org Bug: angleproject:3757 Change-Id: Ib08e2e7b1a9449ca097673acb11655df5d2bbf31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1778862 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/73422a0a5ee1..65e362b7ae2a Created with: gclient setdep -r ./third_party/spirv-tools/src@65e362b7ae2a If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC cwallez@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=cwallez@chromium.org Change-Id: Ib0fbb7bec45551e340170da4f97319f3f0f93e0a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1781041Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
angle-autoroll authored
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/796df2d74e05..92f5afdee0ab Created with: gclient setdep -r ./third_party/glslang/src@92f5afdee0ab If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC cwallez@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=cwallez@chromium.org Change-Id: I56114586c83a6b632a08353bbe263eef1a290f0a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1781040Reviewed-by:
angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
-
- 31 Aug, 2019 5 commits
-
-
Shahbaz Youssefi authored
Various features already implemented hadn't removed suppressions for GLES 3.1. Bug: angleproject:3205 Bug: angleproject:3208 Bug: angleproject:3561 Bug: angleproject:3604 Change-Id: I1cfc5d2150fae6b138fa21a37f8e95cb7d764770 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1771989 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Ian Elliott <ianelliott@google.com>
-
Shahbaz Youssefi authored
Image bindings are placed after atomic counters in the "resources" descriptor set. There are two issues yet to be addressed: - GL can create a 2D (array) view of a 3D image, but this is not allowed in Vulkan. If this cannot be made possible, emulation needs to be done. https://github.com/KhronosGroup/Vulkan-Docs/issues/1033 - GL can create an image view of a texture with a different format and have the data reinterpreted. This is not currently done. Bug: angleproject:3563 Change-Id: I95c4d92c50bb033212a9a67f3f2d6f97c074c7bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1767366 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
Result of simultaneous submission of two CLs. Bug: angleproject:3757 Change-Id: I0e11678633587421f83d337958a1df28a694cf2e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1778967Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
Shahbaz Youssefi authored
A debug overlay system for the Vulkan backend designed with efficiency and runtime configurability in mind. Overlay widgets are of two fundamental types: - Text widgets: A single line of text with small, medium or large font. - Graph widgets: A bar graph of data. Built on these, various overlay widget types are defined that gather statistics. Five such types are defined with one widget per type as example: - Count: A widget that counts something. VulkanValidationMessageCount is an overlay widget of this type that shows the number of validation messages received from the validation layers. - Text: A generic text. VulkanLastValidationMessage is an overlay widget of this type that shows the last validation message. - PerSecond: A value that gets reset every second automatically. FPS is an overlay widget of this type that simply gets incremented on every swap(). - RunningGraph: A graph of last N values. VulkanCommandGraphSize is an overlay of this type. On every vkQueueSubmit, the number of nodes in the command graph is accumulated. On every present(), the value is taken as the number of nodes for the whole duration of the frame. - RunningHistogram: A histogram of last N values. Input values are in the [0, 1] range and they are ranked to N buckets for histogram calculation. VulkanSecondaryCommandBufferPoolWaste is an overlay widget of this type. On vkQueueSubmit, the memory waste from command buffer pool allocations is recorded in the histogram. Overlay font is placed in libANGLE/overlay/ which gen_overlay_fonts.py processes to create an array of bits, which is processed at runtime to create the actual font image (an image with 3 layers). The overlay widget layout is defined in overlay_widgets.json which gen_overlay_widgets.py processes to generate an array of widgetss, each of its respective type, and sets their properties, such as color and bounding box. The json file allows widgets to align against other widgets as well as against the framebuffer edges. Two compute shaders are implemented to efficiently render the UI: - OverlayCull: This shader creates a bitset of Text and Graph widgets whose bounding boxes intersect a corresponding subgroup processed by OverlayDraw. This is done only when the enabled overlay widgets are changed (a feature that is not yet implemented) or the surface is resized. - OverlayDraw: Using the bitsets generated by OverlayCull, values that are uniform for each workgroup (set to be equal to hardware subgroup size), this shader loops over enabled widgets that can possibly intersect the pixel being processed and renders and blends in texts and graphs. This is done once per frame on present(). Currently, to enable overlay widgets an environment variable is used. For example: $ export ANGLE_OVERLAY=FPS:VulkanSecondaryCommandBufferPoolWaste $ ./hello_triangle --use-angle=vulkan Possible future work: - On Android, add settings in developer options and enable widgets based on those. - Spawn a small server in ANGLE and write an application that sends enable/disable commands remotely. - Implement overlay for other backends. Bug: angleproject:3757 Change-Id: If9c6974d1935c18f460ec569e79b41188bd7afcc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1729440 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
See doc/PresentSemaphores.md for details. Bug: angleproject:3450 Bug: angleproject:3670 Change-Id: I52d5bd13a4af25f224d386c9584525c182af6f17 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1776880Reviewed-by:
Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
- 30 Aug, 2019 1 commit
-
-
Jiacheng Lu authored
Bug: angleproject:3804 Change-Id: Iabaae60ed7cbbe423bf768c506099d26cf0dedcf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1768978 Commit-Queue: Jiacheng Lu <lujc@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-