<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>204102</bug_id>
          
          <creation_ts>2019-11-11 22:15:21 -0800</creation_ts>
          <short_desc>[WebGL] Analyze remaining non texture-to-video ANGLE conformance regressions</short_desc>
          <delta_ts>2020-07-23 11:33:06 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebGL</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>204433</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Justin Fan">justin_fan</reporter>
          <assigned_to name="Justin Fan">justin_fan</assigned_to>
          <cc>dino</cc>
    
    <cc>jdarpinian</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1589452</commentid>
    <comment_count>0</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-11-11 22:15:21 -0800</bug_when>
    <thetext>These tests regress when using ANGLE:

conformance/glsl/misc/non-ascii-comments.vert.html
conformance/ogles/GL/build/build_177_to_178.html
conformance/renderbuffers/framebuffer-object-attachment.html (8 failures -&gt; 23 failures)
conformance/extensions/angle-instanced-arrays.html
conformance/extensions/webgl-depth-texture.html (36 failures -&gt; 76 failures)
conformance/context/context-hidden-alpha.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592153</commentid>
    <comment_count>1</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-11-20 15:04:02 -0800</bug_when>
    <thetext>Updates:

non-ascii-comments.vert is not a real regression when run in browser
build_177_to_178 is addressed by https://chromium-review.googlesource.com/c/chromium/src/+/1842223/2/gpu/command_buffer/service/gles2_cmd_decoder_passthrough_doers.cc, but requires an ANGLE update
angle-instanced-arrays is not a real regression</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592154</commentid>
    <comment_count>2</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-11-20 15:04:06 -0800</bug_when>
    <thetext>framebuffer-object-attachment: Several new failures, may not be on ANGLE side though:

1) When trying the framebuffer combination &quot;COLOR_ATTACHMENT0 = RGBA/UNSIGNED_BYTE texture + DEPTH_STENCIL_ATTACHMENT = DEPTH_STENCIL renderbuffer&quot;, after the call to gl.framebufferRenderbuffer, status is reported as &quot;FRAMEBUFFER_UNSUPPORTED&quot; instead of &quot;FRAMEBUFFER_COMPLETE&quot;.

In ANGLE this validation error finds that the depth/stencil attachment is attached twice and sets &quot;gl::FramebufferState.mWebGLDepthStencilConsistent&quot; to false. This makes sense as for WebGL 1, WebKit currently sets a renderbuffer to both DEPTH_ATTACHMENT and STENCIL_ATTACHMENT when DEPTH_STENCIL_ATTACHMENT is requested. Directly forwarding the DEPTH_STENCIL_ATTACHMENT call to ANGLE does not fix this.

2) Attempting to &quot;Attach depthStencil using DEPTH_STENCIL_ATTACHMENT&quot; with a size of 2x2 results in &quot;FRAMEBUFFER_INCOMPLETE_ATTACHMENT&quot; status instead of expected &quot;FRAMEBUFFER_COMPLETE&quot;

3) Testing &quot;DEPTH_STENCIL vs DEPTH_COMPONENT16 with delete/unbind&quot; are broken

4) gl.readPixels(...) on an FBO with no color attachment is reporting &quot;INVALID_ENUM&quot; instead of &quot;INVALID_OPERATION&quot;. This is due to incorrect WebKit-side validation. Removing validation in WebGLRenderingContextBase.cpp for readPixels fixes this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592230</commentid>
    <comment_count>3</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-11-20 17:40:27 -0800</bug_when>
    <thetext>Addressing conformance/extensions/webgl-depth-texture.html in https://bugs.webkit.org/show_bug.cgi?id=204433.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592608</commentid>
    <comment_count>4</comment_count>
    <who name="Justin Fan">justin_fan</who>
    <bug_when>2019-11-21 17:42:37 -0800</bug_when>
    <thetext>context-hidden-alpha.html: gl.blendFunc seems to have the wrong effect with the ANGLE backend. 

On release Safari, `gl.blendFunc(gl.ZERO, gl.DST_ALPHA)` produces the correct result, but fails with ANGLE

With the ANGLE backend, `gl.blendFunc(gl.ZERO, gl.ONE_MINUS_DST_ALPHA)` produces the desired results, but fails in release Safari.

The correct enums are being passed to ANGLE, so it might be something else in the pipeline that&apos;s misinterpreting them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601644</commentid>
    <comment_count>5</comment_count>
    <who name="James Darpinian">jdarpinian</who>
    <bug_when>2019-12-27 15:16:40 -0800</bug_when>
    <thetext>I believe these regressions are all fixed now after my recent changes.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>