Closed Bug 1265112 Opened 4 years ago Closed 4 years ago

Use NV_texture_barrier OpenGL extension for blend mode rendering if available

Categories

(Core :: Graphics: Layers, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla49
Tracking Status
firefox48 --- affected
firefox49 --- fixed

People

(Reporter: mstange, Assigned: mstange)

Details

Attachments

(2 files)

At the moment we allocate + delete one texture per blend pass. We can be a lot more efficient here.

The NV_texture_barrier lets us read directly from the back buffer under certain conditions. As far as I can tell, blend mode rendering respects all those conditions.
Comment on attachment 8741976 [details]
MozReview Request: Bug 1265112 - Add support for NV_texture_barrier to GLContext. r?jrmuizel

https://reviewboard.mozilla.org/r/46875/#review46339
Attachment #8741976 - Flags: review?(jmuizelaar) → review+
Comment on attachment 8741977 [details]
MozReview Request: Bug 1265112 - When rendering blend modes with CompositorOGL, use NV_texture_barrier (if available) to sample directly from the framebuffer. r?jrmuizel

https://reviewboard.mozilla.org/r/46877/#review46341

Pretty nice.
Attachment #8741977 - Flags: review?(jmuizelaar) → review+
Comment on attachment 8741976 [details]
MozReview Request: Bug 1265112 - Add support for NV_texture_barrier to GLContext. r?jrmuizel

Review request updated; see interdiff: https://reviewboard.mozilla.org/r/46875/diff/1-2/
Comment on attachment 8741977 [details]
MozReview Request: Bug 1265112 - When rendering blend modes with CompositorOGL, use NV_texture_barrier (if available) to sample directly from the framebuffer. r?jrmuizel

Review request updated; see interdiff: https://reviewboard.mozilla.org/r/46877/diff/1-2/
Flags: needinfo?(mstange)
https://hg.mozilla.org/mozilla-central/rev/5313bf5eb932
https://hg.mozilla.org/mozilla-central/rev/74bb0630a775
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
You need to log in before you can comment on or make changes to this bug.