Transform feedback must fail if same buffer is bound to two binding points |
||||||
Issue descriptionPer resolution by the WebGL working group in this pull request: https://github.com/KhronosGroup/WebGL/pull/2658 Draw calls doing transform feedback must fail if the same buffer is bound to two different transform feedback attributes (using separate rather than interleaved attributes). The new test conformance2/transform_feedback/same-buffer-two-binding-points.html is failing on all platforms right now: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_angle_rel_ng/2341 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux_optional_gpu_tests_rel/6289 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_optional_gpu_tests_rel/6887 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win_angle_rel_ng/2122 https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win_optional_gpu_tests_rel/5256
,
Oct 9
,
Nov 21
,
Nov 27
The following revision refers to this bug: https://chromium.googlesource.com/angle/angle/+/471b8d4c7383298792e185eaae59347be9ae8601 commit 471b8d4c7383298792e185eaae59347be9ae8601 Author: James Darpinian <jdarpinian@chromium.org> Date: Tue Nov 27 08:50:46 2018 WebGL, D3D: Forbid multiple TF outputs in one buffer Implementing a WebGL spec change: https://github.com/KhronosGroup/WebGL/pull/2658 Fixes WebGL 2 conformance test: conformance2/transform_feedback/same-buffer-two-binding-points.html Also applying the change to D3D backends because they can't support multiple transform feedback outputs in one buffer. Bug: chromium:866089 Change-Id: I8d7eda14225c13efb7ca1ed974239332be4e79a6 Reviewed-on: https://chromium-review.googlesource.com/c/1347749 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/Buffer.cpp [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/ErrorStrings.h [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/renderer/d3d/d3d11/renderer11_utils.cpp [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/validationES3.cpp [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/Buffer.h [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/Caps.h [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/libANGLE/Caps.cpp [modify] https://crrev.com/471b8d4c7383298792e185eaae59347be9ae8601/src/tests/gl_tests/WebGLCompatibilityTest.cpp
,
Nov 27
,
Nov 27
,
Nov 27
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/edf93e9e7c14679be9923f7a425b57127181a6eb commit edf93e9e7c14679be9923f7a425b57127181a6eb Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Tue Nov 27 21:16:28 2018 Roll src/third_party/angle 5552cdf032dd..4f2b94cb9a6b (3 commits) https://chromium.googlesource.com/angle/angle.git/+log/5552cdf032dd..4f2b94cb9a6b git log 5552cdf032dd..4f2b94cb9a6b --date=short --no-merges --format='%ad %ae %s' 2018-11-27 geofflang@chromium.org Expose EXT_color_buffer_half_float if RGBA16F is renderable. 2018-11-27 jiajia.qin@intel.com ES31: Add swizzle support in SSBO (Part 1) 2018-11-27 jdarpinian@chromium.org WebGL, D3D: Forbid multiple TF outputs in one buffer Created with: gclient setdep -r src/third_party/angle@4f2b94cb9a6b The AutoRoll server is located here: https://autoroll.skia.org/r/angle-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel BUG= chromium:866089 TBR=fjhenigman@chromium.org Change-Id: I2f9f64d4e1a188df1612ecfb8c66b6129dc5a202 Reviewed-on: https://chromium-review.googlesource.com/c/1352244 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#611325} [modify] https://crrev.com/edf93e9e7c14679be9923f7a425b57127181a6eb/DEPS
,
Nov 28
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/75ece1742b60bcca5e1dfb28a7bb16b4496b97bc commit 75ece1742b60bcca5e1dfb28a7bb16b4496b97bc Author: James Darpinian <jdarpinian@chromium.org> Date: Wed Nov 28 00:44:31 2018 gpu: Forbid binding one buffer to two transform feedback outputs Implementing a WebGL spec change: https://github.com/KhronosGroup/WebGL/pull/2658 Fixes WebGL 2 conformance test: conformance2/transform_feedback/same-buffer-two-binding-points.html We want to forbid this for all GL contexts, not just WebGL ones, because it is also forbidden by DirectX, so ANGLE can't efficiently implement it. Bug: 866089 Change-Id: Ibf57adf513eca05b46b93d2139ba038d488c9cc9 Reviewed-on: https://chromium-review.googlesource.com/c/1346994 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org> Cr-Commit-Position: refs/heads/master@{#611468} [modify] https://crrev.com/75ece1742b60bcca5e1dfb28a7bb16b4496b97bc/content/test/gpu/gpu_tests/webgl2_conformance_expectations.py [modify] https://crrev.com/75ece1742b60bcca5e1dfb28a7bb16b4496b97bc/gpu/command_buffer/service/buffer_manager.h [modify] https://crrev.com/75ece1742b60bcca5e1dfb28a7bb16b4496b97bc/gpu/command_buffer/service/gles2_cmd_decoder.cc
,
Nov 28
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by bugdroid1@chromium.org
, Jul 21