Bug 231653 - [TextureMapper] large blur filter doesn't look smooth
Summary: [TextureMapper] large blur filter doesn't look smooth
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Platform (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-10-12 19:02 PDT by Fujii Hironori
Modified: 2022-06-26 23:09 PDT (History)
2 users (show)

See Also:


Attachments
test case (452 bytes, text/html)
2022-02-21 15:56 PST, Fujii Hironori
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2021-10-12 19:02:56 PDT
[TextureMapper] large blur filter doesn't look smooth

attachment#413757 [details]

https://speakerdeck.com/trishagee/code-review-best-practice
Comment 1 Radar WebKit Bug Importer 2021-10-19 19:03:20 PDT
<rdar://problem/84444307>
Comment 2 Smoley 2021-11-02 17:19:27 PDT
Thanks for filing, the attached test case and the linked page both look smooth for me on Safari Technology Preview 134. Are you seeing this issue there as well?
Comment 3 Fujii Hironori 2021-11-02 18:23:25 PDT
TextureMapper is used only by GTK, WPE, WinCairo and PlayStation ports.
Comment 4 Fujii Hironori 2022-02-21 15:56:44 PST
Created attachment 452789 [details]
test case
Comment 5 Fujii Hironori 2022-06-26 23:09:27 PDT
FEGaussianBlurSoftwareApplier::boxBlurUnaccelerated is applying box-blur three times.
https://github.com/WebKit/WebKit/blob/a713d4c4e774133040e273ce5c2ec5e8ebf85e02/Source/WebCore/platform/graphics/filters/software/FEGaussianBlurSoftwareApplier.cpp#L302-L328

This is suggested by the spec:
https://drafts.fxtf.org/filter-effects/#feGaussianBlurElement

> For larger values of "s" (s >= 2.0), an approximation can be
> used: Three successive box-blurs build a piece-wise quadratic
> convolution kernel, which approximates the Gaussian kernel to
> within roughly 3%.