Open Bug 1583545 Opened 6 years ago Updated 10 months ago

Add linear gradient clips in webrender

Categories

(Core :: Graphics: WebRender, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: nical, Assigned: nical)

References

(Blocks 2 open bugs)

Details

Right now gradient clips are rendered on the CPU and passed to webrender as image masks. This hurts us on some sites such as https://beta.music.apple.com.

In addition to removing the cost of CPU rendering and texture uploads, this would let us do the same type of segment optimization as we do for rounded rectangles, extraxting out potentially large sections of the mask that have no effect (that would have a large effect on the apple music website for example where gradients are big and the vast majority of the mask is fully opaque).

Assignee: nobody → nical.bugzilla
Blocks: 1579977, wr-perf
Priority: -- → P3
Blocks: wr-blob-perf
No longer blocks: wr-perf
Severity: normal → S3

With the move to quad-shader in Bug 1887838 and the meta-bug bug 1887835, is this bug still relevant?

Flags: needinfo?(nical.bugzilla)

Yes. It's connected in the sense that the gradient clips will have to be implemented in the quad clipping infrastructure (and potentially also in the brush infra if we can't force all gradient clips to go through the quad code path), but right now and with the work in the mentioned bugs we can render gradients into color targets but ot use them as clips.

Flags: needinfo?(nical.bugzilla)
You need to log in before you can comment on or make changes to this bug.