Enable USE_FAST_PATH for more coordinate systems in WebRender clips
Categories
(Core :: Graphics: WebRender, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox72 | --- | fixed |
People
(Reporter: kvark, Assigned: kvark)
References
Details
Attachments
(1 file)
This is a follow up to bug 1535976 that is meant to improve cases like bug 1584794 (see point 1 in https://bugzilla.mozilla.org/show_bug.cgi?id=1584794#c17).
Current conditions for using the fast path are the following:
if clip_spatial_node.coordinate_system_id == CoordinateSystemId::root() &&
flags.contains(ClipNodeFlags::SAME_COORD_SYSTEM) &&
node.item.kind.supports_fast_path_rendering() {
flags |= ClipNodeFlags::USE_FAST_PATH;
}
This we could do better:
- It seems to me that
SAME_COORD_SYSTEM
doesn't need to be checked here. The main benefit of the flag is using a faster shader. Clip rendering isn't concerned about where the target primitive is, it should only be concerned about where the clip is versus the rasterization/world space. - The
CoordinateSystemId::root()
check is too conservative. Since sampling the mask is only concerned with 2D coordinates, we could check the actual 2D submatrix of the transform. In cases like bug 1535976, it would be identity, allowing for the fast path.
Note: this bug is only about the coordinate systems. There are other improvements possible to this condition.
Comment 1•5 years ago
|
||
I think the reasoning behind those checks is that the fast path skips edge AA, and ensuring both clip + primitive are in the root coordinate system is a (conservative?) way to ensure that no AA is required.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 2•5 years ago
|
||
Comment 4•5 years ago
|
||
Backed out changeset d65ded00cb51 (Bug 1597319) for causing wrench bustages CLOSED TREE
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=277254917&repo=autoland&lineNumber=32
Comment 7•5 years ago
|
||
Relanded this bug since it seems that it did not cause that wrench bustage.
Comment 8•5 years ago
|
||
Backed out for WR bustages on perspective-box-shadow.yaml
Backout link: https://hg.mozilla.org/integration/autoland/rev/5caface7b2afcb648443a82ca9f4146b9da1d672
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=277291809&repo=autoland&lineNumber=1215
Assignee | ||
Comment 10•5 years ago
|
||
the was an off-by-one error in the expectations (4128 pixels versus 4129... duh), updated and relanded
Comment 11•5 years ago
|
||
bugherder |
Description
•