-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] Respect the current transform for backdrop filter effect params #35240
Conversation
jonahwilliams
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
Was your expectation that this would do bad things to performance correct? |
|
@zanderso This will 3x sigma for the backdrop blur in the app we're currently testing, and so the backdrop blur will run at ~1/3 the speed it currently does since the blur is linear. (But we still have lots of further optimization we can do for this blur) |
|
Bit of a tiny jump in the transition perf benchmark on Android on this change: https://flutter-flutter-perf.skia.org/e/?begin=1659271866&end=1660007287&keys=X3afeaad5edd93e30e365b8e7bab5c7c4&requestType=0&xbaroffset=30329 My understanding is that this is expected to come back down after further optimizations to blurs, right? |
|
@zanderso Yeah, I think we can scale sublinearly /wrt sigma on both passes with indistinguishable quality loss after some iteration. |
|
Understood. For the record, there was a second slowdown on #35249. Strangely not seeing anything on the iOS side. |
The blur filter internally multiplies sigma by the current transform, but the backdrop filter is a special case that renders with an identity matrix, so this change just applies the scale to the effect params when the backdrop filter is recorded.