-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] Fix clip pipeline validation failure; add dedicated clip shaders. #43946
Conversation
…lutter#43905)" This reverts commit bcda9a5.
…al & Vulkan. (flutter#43781)" This reverts commit 1a8edf0.
|
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
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
The color attachment issue would require a similar fix to the vulkan backend where the pipeline we use to create the prototype has the correct color attachment, right?
…131214) flutter/engine@2b8d83f...815b971 2023-07-24 [email protected] Fix missing dispose VirtualDisplayController (flutter/engine#43807) 2023-07-24 [email protected] [Impeller] provide cull rect to Canvas in GL/Vulakn impeller backend. (flutter/engine#43961) 2023-07-24 [email protected] [Impeller] Fix clip pipeline validation failure; add dedicated clip shaders. (flutter/engine#43946) 2023-07-24 [email protected] Roll ANGLE from e28575f66ae5 to 5e21d7f02425 (4 revisions) (flutter/engine#43964) 2023-07-24 [email protected] Roll Skia from a56bc23bfec7 to 99e8dc51ba53 (5 revisions) (flutter/engine#43963) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Resolves flutter/flutter#131100 * Skip rect clips that we know won't further restrict the clip shape. * Don't append clips to enforce subpass bounds. We currently don't collapse passes when subpass clips are added anyhow, so just a restriction to subpass collapsing in order to keep the current behavior intact. * Small refactor to reduce confusion: Just place the subpass bounds limit into `EntityPass` itself instead of the delegate. Built on #43946 (because iOS currently fails validation without it). Gallery home screen before/after: 
…lutter#131214) flutter/engine@2b8d83f...815b971 2023-07-24 [email protected] Fix missing dispose VirtualDisplayController (flutter/engine#43807) 2023-07-24 [email protected] [Impeller] provide cull rect to Canvas in GL/Vulakn impeller backend. (flutter/engine#43961) 2023-07-24 [email protected] [Impeller] Fix clip pipeline validation failure; add dedicated clip shaders. (flutter/engine#43946) 2023-07-24 [email protected] Roll ANGLE from e28575f66ae5 to 5e21d7f02425 (4 revisions) (flutter/engine#43964) 2023-07-24 [email protected] Roll Skia from a56bc23bfec7 to 99e8dc51ba53 (5 revisions) (flutter/engine#43963) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
…lutter#131214) flutter/engine@2b8d83f...815b971 2023-07-24 [email protected] Fix missing dispose VirtualDisplayController (flutter/engine#43807) 2023-07-24 [email protected] [Impeller] provide cull rect to Canvas in GL/Vulakn impeller backend. (flutter/engine#43961) 2023-07-24 [email protected] [Impeller] Fix clip pipeline validation failure; add dedicated clip shaders. (flutter/engine#43946) 2023-07-24 [email protected] Roll ANGLE from e28575f66ae5 to 5e21d7f02425 (4 revisions) (flutter/engine#43964) 2023-07-24 [email protected] Roll Skia from a56bc23bfec7 to 99e8dc51ba53 (5 revisions) (flutter/engine#43963) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Turns out removing the color attachment is failing Metal validation on iOS due to the pipeline color attachments mismatching the framebuffer (even though it winds up rendering correctly).
So this patch replaces the mechanism with a better default config, including:
I'll take another swing at trying to get it to work if the iOS benchmarks pop back up a bit from this. For now, this fixes the validation failure and should make clips a tad faster on Vulkan and GLES.