Canvas clipping issues with hardware acceleration enabled on Firefox 133 (Intel Iris Xe Graphics)
Categories
(Core :: Graphics: Canvas2D, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr115 | --- | unaffected |
firefox-esr128 | --- | unaffected |
firefox133 | --- | wontfix |
firefox134 | --- | fixed |
firefox135 | --- | fixed |
People
(Reporter: olivier.belzile, Assigned: lsalzman)
References
(Blocks 1 open bug)
Details
Attachments
(5 files)
362.94 KB,
image/png
|
Details | |
379.96 KB,
image/png
|
Details | |
38.00 KB,
text/plain
|
Details | |
43.09 KB,
image/png
|
Details | |
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
dmeehan
:
approval-mozilla-release-
|
Details | Review |
Steps to reproduce:
Using the canvas clip method in JavaScript to draw an image decomposed in multiple triangles.
Actual results:
Some triangle paths clipping seems to work ok while in some others we cannot see the image at all.
Expected results:
Each triangle should have been drawn next to each other giving a complete picture.
Expected result is achieved when hardware acceleration is disabled.
Reporter | ||
Comment 1•2 months ago
|
||
Comment 2•2 months ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Graphics: Canvas2D' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Comment 3•2 months ago
|
||
- Type "about:support" in Firefox and copy-paste its contents here
- Please share a testcase that reproduces this issue for you
Reporter | ||
Comment 4•2 months ago
|
||
Reporter | ||
Comment 5•2 months ago
|
||
Here is the content from about:support. Will try to provide a simple testcase soon. Thank you.
Reporter | ||
Comment 6•2 months ago
|
||
Bug can be replicated here when hardware acceleration is enabled on some video card I think, but not on some others.
https://codepen.io/olivier-belzile/pen/KwPMpQG
On line 11, change the subdivs count. Value of 1 and 2 seems ok. Value of 3 or above shows red triangles. See new attachment.
Reporter | ||
Comment 7•2 months ago
|
||
Comment 8•2 months ago
|
||
I cannot repro on my AMD iGPU machine. This may be GPU driver specific.
Assignee | ||
Updated•2 months ago
|
Assignee | ||
Updated•2 months ago
|
Assignee | ||
Comment 10•2 months ago
|
||
The Windows Intel D3D driver does not seem to be recognizing that the clip mask
texture's data has changed unless the texture binding is re-latched. This causes
clipping to seemingly use an old version of the clip mask's contents.
To work around this bug, the clip mask is instead built on texture unit 0, and
then only bound on texture unit 1 after it is modified, so that the binding is
only re-latched on texture unit 1 after modification.
Updated•2 months ago
|
Updated•2 months ago
|
Comment 11•2 months ago
|
||
Comment 12•2 months ago
|
||
bugherder |
Assignee | ||
Comment 13•2 months ago
|
||
Comment on attachment 9443766 [details]
Bug 1935759 - Work around Intel driver bug when binding clip mask. r?tnikkel
Beta/Release Uplift Approval Request
- User impact if declined/Reason for urgency: Buggy/wrong Canvas2D rendering on potentially everyone with Windows + Intel IGP. The driver bug doesn't seem to affect other platforms, but Windows + Intel IGP is our largest user subpopulation.
- Is this code covered by automated tests?: Unknown
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): This just replaces a WebGL texture binding sequence with an equally valid code sequence that doesn't aggravate the Intel driver bug and is low risk on other platforms too. Verified locally that this does fix the issue.
- String changes made/needed:
- Is Android affected?: No
Comment 14•2 months ago
|
||
Comment on attachment 9443766 [details]
Bug 1935759 - Work around Intel driver bug when binding clip mask. r?tnikkel
We don't have any more Fx133 releases before Fx134 ships.
Updated•2 months ago
|
Reporter | ||
Comment 15•2 months ago
|
||
Thanks for the quick fix!
Can we expect it to be included in Fx134? What's the planned release date?
Comment 16•2 months ago
|
||
Comment on attachment 9443766 [details]
Bug 1935759 - Work around Intel driver bug when binding clip mask. r?tnikkel
Approved for 134 RC1.
(In reply to Olivier Belzile from comment #15)
Can we expect it to be included in Fx134? What's the planned release date?
Fx134 ships on Jan 7.
Updated•2 months ago
|
Comment 17•2 months ago
|
||
uplift |
Description
•