Closed Bug 1637705 Opened 4 years ago Closed 4 years ago

SWGL fails wrench reftest tranforms/large-raster-root.yaml

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

RESOLVED FIXED
mozilla78
Tracking Status
firefox78 --- fixed

People

(Reporter: lsalzman, Assigned: lsalzman)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

The Wrench reftest tranforms/large-raster-root.yaml is failing due to a number of bugs in the perspective plane clipping code, such that I just had to go in and rewrite it to address them:

  1. We were still producing Z = W = 0 coordinates as a result of clipping against only Z planes, so needed to clip against 6 frustum planes in some circumstances
  2. The strategy of overwriting points in-place in the clipping code was, uh, causing the buffer to overwrite the points it was reading from too quickly, and given that it's too tricky to fix that nicely, I've decided to just abandon the write-in-place strategy there
  3. The stability of the clipping code working against a single side of the plane at a time was not so great, so I needed to process both sides of the -W <= C <= W inequality simultaneously to address some precision and performance issues
Attachment #9148111 - Attachment description: Bug 1637705 - fix SWGL's frustum clipping to work against all 6 sides. r?jrmuizel → Bug 1637705 - fix SWGL's frustum clipping to work against all 6 sides. r?jimb
Pushed by lsalzman@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b1dbf8c97410
fix SWGL's frustum clipping to work against all 6 sides. r=jimb
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla78
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: