Bug 282682

Summary: [TextureMapper] Split preserve-3D intersections for rendering
Product: WebKit Reporter: Jani Hautakangas <jani>
Component: WPE WebKitAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: ana.tudor.lhnh, aperez, bugs-noreply, fujii.hironori, svillar, webkit-bug-importer
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=284026
https://bugs.webkit.org/show_bug.cgi?id=284027
Bug Depends on: 283820    
Bug Blocks:    
Attachments:
Description Flags
test case
none
[Screenshot] WPEWebkit 2.46.0 incorrect rendering
none
[Screenshot] Chrome: Layer intersections rendered correcty none

Jani Hautakangas
Reported 2024-11-06 03:42:57 PST
Created attachment 473148 [details] test case Preserve-3d does not correctly render intersections, and also applying filters in a 3D scene can break the rendering order. Rendering should be done as follows: CSS Transforms Module Level 2. In a 3D rendering context, rendering and sorting of elements is done as follows: 1. The element establishing the 3D rendering context, and each other 3D transformed element participating in the 3D rendering context, is rendered into its own plane. This plane includes the element’s backgrounds, borders, other box decorations, content, and descendant elements, excluding any descendant elements that have their own plane (and their descendants). This rendering is done according to CSS 2.1,Appendix E, Section E.2 Painting Order. 2. Intersection is performed between this set of planes, according to Newell’s algorithm, with the planes transformed by the accumulated 3D transformation matrix. Coplanar 3D transformed elements are rendered in painting order.
Attachments
test case (3.72 KB, text/html)
2024-11-06 03:42 PST, Jani Hautakangas
no flags
[Screenshot] WPEWebkit 2.46.0 incorrect rendering (15.67 KB, image/png)
2024-11-06 03:43 PST, Jani Hautakangas
no flags
[Screenshot] Chrome: Layer intersections rendered correcty (16.05 KB, image/png)
2024-11-06 03:44 PST, Jani Hautakangas
no flags
Jani Hautakangas
Comment 1 2024-11-06 03:43:56 PST
Created attachment 473149 [details] [Screenshot] WPEWebkit 2.46.0 incorrect rendering
Jani Hautakangas
Comment 2 2024-11-06 03:44:19 PST
Created attachment 473150 [details] [Screenshot] Chrome: Layer intersections rendered correcty
Fujii Hironori
Comment 3 2024-11-07 14:31:27 PST
EWS
Comment 4 2024-11-14 12:08:50 PST
Committed 286605@main (d40d59e4e550): <https://commits.webkit.org/286605@main> Reviewed commits have been landed. Closing PR #36256 and removing active labels.
Fujii Hironori
Comment 5 2024-11-14 13:55:00 PST
*** Bug 217080 has been marked as a duplicate of this bug. ***
Fujii Hironori
Comment 6 2024-11-14 13:55:05 PST
*** Bug 244521 has been marked as a duplicate of this bug. ***
Fujii Hironori
Comment 7 2024-11-14 13:55:09 PST
*** Bug 263273 has been marked as a duplicate of this bug. ***
Fujii Hironori
Comment 8 2024-11-14 13:55:14 PST
*** Bug 263255 has been marked as a duplicate of this bug. ***
Fujii Hironori
Comment 9 2024-11-14 13:55:21 PST
*** Bug 217103 has been marked as a duplicate of this bug. ***
Fujii Hironori
Comment 10 2024-11-14 13:55:25 PST
*** Bug 255328 has been marked as a duplicate of this bug. ***
Adrian Perez
Comment 11 2024-11-29 05:49:56 PST
Reopened Bugzilla. REGRESSION(286605@main): [WPE] Massive performance regression on postercircle, tracking revert in https://bugs.webkit.org/show_bug.cgi?id=283820.
Jani Hautakangas
Comment 12 2024-12-20 01:20:51 PST
Regression has been fixed
Michael Catanzaro
Comment 13 2024-12-27 10:50:22 PST
*** Bug 283043 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.