Closed Bug 1707228 Opened 3 years ago Closed 3 years ago

Rendering artifacts on https://codepen.io/thebabydino/pen/bGwYVOm (both sw-wr and hw-wr)

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

VERIFIED FIXED
90 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox88 --- unaffected
firefox89 --- fixed
firefox90 --- fixed

People

(Reporter: mayankleoboy1, Assigned: lsalzman)

References

(Blocks 1 open bug, Regression, )

Details

(Keywords: regression)

Attachments

(3 files)

  1. enable either hw-wr or sw-wr
  2. go to https://codepen.io/thebabydino/pen/bGwYVOm
  3. Optional but recommended : Reduce the size of the actual demo pane by increasing teh size of the CSS/JS/HTML code panes. The smaller the size of the demo pane, easier to repro the artifacts.

ER: nice looking demo
AR: artifacts on the shining stars

Regression range :

2021-04-23T18:11:40.335000: INFO : Narrowed integration regression window from [d12aec06, f3b8d237] (4 builds) to [7534ee1e, f3b8d237] (2 builds) (~1 steps left)
2021-04-23T18:11:40.357000: DEBUG : Starting merge handling...
2021-04-23T18:11:40.357000: DEBUG : Using url: https://hg.mozilla.org/integration/autoland/json-pushes?changeset=f3b8d237e29af262b2042809e13ce6043b75c922&full=1
2021-04-23T18:11:40.357000: DEBUG : redo: attempt 1/3
2021-04-23T18:11:40.357000: DEBUG : redo: retry: calling _default_get with args: ('https://hg.mozilla.org/integration/autoland/json-pushes?changeset=f3b8d237e29af262b2042809e13ce6043b75c922&full=1',), kwargs: {}, attempt #1
2021-04-23T18:11:40.357000: DEBUG : urllib3.connectionpool: Resetting dropped connection: hg.mozilla.org
2021-04-23T18:11:42.232000: DEBUG : urllib3.connectionpool: https://hg.mozilla.org:443 "GET /integration/autoland/json-pushes?changeset=f3b8d237e29af262b2042809e13ce6043b75c922&full=1 HTTP/1.1" 200 None
2021-04-23T18:11:42.279000: DEBUG : Found commit message:
Bug 1682195 - Ensure that area outside image mask is cleared if it is first clip. r=gw

This fixes a previous bug in the image mask code that the tile rect caused cs_clip_image
to use discard on a first clip, the outside area would be left to whatever the initial value
of the texture from texture cache was. Since we need to support trimming down to the tile
rect for tiled image masks, this opts to just clear the background of the task in tricky
cases.

Differential Revision: https://phabricator.services.mozilla.com/D111375

2021-04-23T18:11:42.279000: DEBUG : Did not find a branch, checking all integration branches
2021-04-23T18:11:42.279000: INFO : The bisection is done.
2021-04-23T18:11:42.279000: INFO : Stopped

Attached file about:support
Severity: -- → S3

Recent changes in cs_clip_image are exposing some cases where we are letting rectangles being warped
by perspective transform get considered as axis-aligned. This makes the preserves_2d_axis_alignment
check stronger to guard against the Z dependency in the W coordinate that is messing up clipping.

Assignee: nobody → lsalzman
Status: NEW → ASSIGNED

Set release status flags based on info from the regressing bug 1682195

Pushed by lsalzman@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/1fec27a43a85
Check for no perspective dependency on Z component on axis-aligned transforms. r=aosmond
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch

Mayank, can you confirm the patch works on your end? In my local testing it seemed to do the trick.

Flags: needinfo?(mayankleoboy1)

As of nightly with buildconfig : https://hg.mozilla.org/mozilla-central/rev/6f8320a4798f53fa8471efe49181f9d6accead85 , the bug no longer reproduces with both sw-wr and hw-wr.

Flags: needinfo?(mayankleoboy1)
Status: RESOLVED → VERIFIED

Comment on attachment 9218145 [details]
Bug 1707228 - Check for no perspective dependency on Z component on axis-aligned transforms. r?aosmond

Beta/Release Uplift Approval Request

  • User impact if declined: Rendering artifacts in WebRender with some uses of 3D transforms.
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This fix mainly just tries to avoid using a certain optimization for certain classes of 3D transforms that were problematic, and should only affect those corner-cases. Fix verified.
  • String changes made/needed:
Attachment #9218145 - Flags: approval-mozilla-beta?

Comment on attachment 9218145 [details]
Bug 1707228 - Check for no perspective dependency on Z component on axis-aligned transforms. r?aosmond

89 regression, fix on nightly for 2 weeks and has tests, approved for 89 beta 9, thanks.

Attachment #9218145 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: