Closed Bug 1604664 Opened 6 years ago Closed 6 years ago

Enforce the WebRender shaders to be bound after the blend changes

Categories

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

task

Tracking

()

RESOLVED FIXED
mozilla73
Tracking Status
firefox73 --- fixed

People

(Reporter: kvark, Assigned: kvark)

Details

Attachments

(1 file)

The Renderer currently issues set_blend mixed with Shader::bind. The blending is mostly set up first, but not every time. This comes up as a problem for the next-gen APIs where the blending and the shader are both a part of the pipeline state, and we don't want to eagerly be setting the new pipeline on the change of either.

What we could do is to enforce (.e.g. by a debug-only runtime flag) that there is always a call to bind a shader between a blend setting and a draw call. This would allow the Szeged team to unconditionally change the pipeline on the shader binding. See https://github.com/szeged/webrender/pull/342

Assignee: nobody → dmalyshau
Status: NEW → ASSIGNED
Pushed by dmalyshau@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/8b96d1241d11 WR force program rebinding after blend changes r=gw
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla73
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: