Closed
Bug 1480616
Opened 7 years ago
Closed 11 months ago
[blob-img] Avoid redrawing entire source for filter inputs for each tile.
Categories
(Core :: Graphics: WebRender, enhancement, P3)
Tracking
()
RESOLVED
FIXED
132 Branch
People
(Reporter: jrmuizel, Assigned: ahale)
References
Details
Currently we redraw the entire source for filter inputs for each tile.
We can avoid this with the following scheme:
- Add BeginShared(), EndSharedSource(SourceSurface *) functions to DrawTarget
- In DrawTargetRecording each BeginShared stores an incrementing id to the command stream
- When we encounter a BeginShared during replay we take a lock on a shared array. If the shared surface is stored in the slot for that id than we take it out, otherwise we replay the commands between BeginShared and EndSharedSource(). We store the resulting SourceSurface in the slot and release the lock.
Updated•7 years ago
|
Priority: -- → P3
Updated•7 years ago
|
Blocks: stage-wr-next
Updated•3 years ago
|
Severity: normal → S3
Assignee | ||
Comment 1•11 months ago
|
||
With gfx.webrender.svg-filter-effects enabled, the source picture rendering is aggressively clipped according to the visible rect (which is itself limited by tile bounds), so this shouldn't be very costly in most cases; we're not re-rendering the entire thing, just the portion relevant to this tile.
Assignee: nobody → ahale
Status: NEW → RESOLVED
Closed: 11 months ago
Depends on: 1906212
Resolution: --- → FIXED
Assignee | ||
Updated•11 months ago
|
status-firefox130:
--- → affected
status-firefox131:
--- → affected
status-firefox132:
--- → fixed
status-firefox-esr115:
--- → affected
status-firefox-esr128:
--- → affected
Updated•11 months ago
|
Target Milestone: --- → 132 Branch
You need to log in
before you can comment on or make changes to this bug.
Description
•