Bug 244824

Summary: TextureMapper: rendering issue of a 3D transformed element at infinity with a parent with opacity<1
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: PlatformAssignee: Fujii Hironori <Hironori.Fujii>
Status: RESOLVED FIXED    
Severity: Normal CC: cmarcelo, don.olmstead, ews-watchlist, kondapallykalyan, luiz, magomez, webkit-bug-importer, zdobersek
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 245118    
Bug Blocks:    
Attachments:
Description Flags
test case
none
test case 2
none
test case 3
none
WIP patch
ews-feeder: commit-queue-
test case 4
none
WIP patch
none
WIP patch
ews-feeder: commit-queue-
WIP patch
none
Patch
none
Patch none

Description Fujii Hironori 2022-09-05 21:01:57 PDT
Created attachment 462155 [details]
test case

TextureMapper: rendering issue of a 3D transformed element with negative w and a parent with opacity
Comment 1 Fujii Hironori 2022-09-05 22:24:27 PDT
Created attachment 462157 [details]
test case 2
Comment 2 Fujii Hironori 2022-09-05 22:57:15 PDT
Created attachment 462159 [details]
test case 3
Comment 3 Fujii Hironori 2022-09-07 14:20:34 PDT
Created attachment 462188 [details]
WIP patch
Comment 4 Radar WebKit Bug Importer 2022-09-12 21:02:19 PDT
<rdar://problem/99853256>
Comment 5 Fujii Hironori 2022-09-13 23:21:25 PDT
Created attachment 462329 [details]
test case 4
Comment 6 Fujii Hironori 2022-09-14 19:28:39 PDT
Created attachment 462343 [details]
WIP patch
Comment 7 Fujii Hironori 2022-09-15 00:36:12 PDT
Created attachment 462351 [details]
WIP patch
Comment 8 Fujii Hironori 2022-09-19 23:26:43 PDT
Created attachment 462468 [details]
WIP patch
Comment 9 Fujii Hironori 2022-09-26 18:00:59 PDT
Created attachment 462642 [details]
Patch
Comment 10 Fujii Hironori 2022-09-26 20:36:56 PDT
Created attachment 462645 [details]
Patch
Comment 11 Don Olmstead 2022-09-29 13:48:16 PDT
Comment on attachment 462645 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=462645&action=review

> Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:364
> +template<typename T>
> +struct Point4D {
> +    T x;
> +    T y;
> +    T z;
> +    T w;
> +};
> +
> +template<typename T>
> +Point4D<T> operator+(Point4D<T> s, Point4D<T> t)
> +{
> +    return { s.x + t.x, s.y + t.y, s.z + t.z, s.w + t.w };
> +}
> +
> +template<typename T>
> +Point4D<T> operator-(Point4D<T> s, Point4D<T> t)
> +{
> +    return { s.x - t.x, s.y - t.y, s.z - t.z, s.w - t.w };
> +}
> +
> +template<typename T>
> +Point4D<T> operator*(T s, Point4D<T> t)
> +{
> +    return { s * t.x, s * t.y, s * t.z, s * t.w };
> +}

I'm just surprised there's nothing hanging out already that you can piggy-back on for this.
Comment 12 EWS 2022-09-29 14:22:22 PDT
Committed 255013@main (2fd3420ef281): <https://commits.webkit.org/255013@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 462645 [details].