Closed Bug 2023110 Opened 3 months ago Closed 2 months ago

Fix the transform in the quad cache key

Categories

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

task

Tracking

()

RESOLVED FIXED
151 Branch
Tracking Status
firefox150 --- fixed
firefox151 --- fixed

People

(Reporter: nical, Assigned: nical)

References

Details

(Keywords: webcompat:platform-bug)

Attachments

(3 files)

The quad cache key contains a spatial node uid that is not stable across frames, which is incorrect. In addition, it gets in the way of Glenn's work on invalidation. The plan is to switch it to the local-to-device transform's value itself.

The motivations are:

  • to have access to the local-to-device transform earlier in the call chain in order to use it for the cache key,
  • to avoid per-primitive redundant computation that should be done per-cluster,
  • (as a bonus) to reduce the number of parameters in a lot of the quad functions.
Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → 151 Branch
Attachment #9558788 - Flags: approval-mozilla-beta?

The uplift form on lando does not let me edit the usual blurb about rationale and risk. so here it goes:

Why is the uplift needed:

Visual regressions (For example bug 2025272).

Risk of taking the patch

Rather low, although I wish the fix was a little less invasive. The fix is simple though.
The patch just made it into nightly so we could wait for a few days before uplifting.

Affected branches

The bug was introduced in version 148, but was unnoticed until it was made easier to reproduce in version 150.
I think that uplifting to 150 should be enough.

Blocks: 2025272
Attachment #9558788 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Regressions: 2026636
Regressions: 2030043
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: