-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] fix validation warning on iOS/macOS when compiling external texture shader. #45080
[Impeller] fix validation warning on iOS/macOS when compiling external texture shader. #45080
Conversation
…l texture shader.
|
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. |
bdero
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.
We should exclude this shader and pipeline cache on non-GL backends. Filed an issue: flutter/flutter#133286
|
I'll just fix that now |
| ^(id<MTLRenderPipelineState> _Nullable render_pipeline_state, | ||
| NSError* _Nullable error) { | ||
| if (error != nil) { | ||
| VALIDATION_LOG << "Could not create render pipeline: " |
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.
This change would have made the error a lot easier to find for someone that isn't building the engine.
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.
This is a nice add. 👍
|
Updated this to ifdef out the shader on non android platforms, and check if the context is GLES before initializing on Android. |
| CreateDefaultPipeline<PorterDuffBlendPipeline>(*context_); | ||
|
|
||
| // GLES Android only shader. | ||
| #ifdef FML_OS_ANDROID |
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.
Nit: Gate on building the GLES backend, not Android? This will probably come in handy for other desktop/embedded GL contexts. (Even in the case that we don't ship desktop GL for Flutter)
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.
Done
…gine into fix_shader_link_warning
…ng external texture shader. (flutter/engine#45080)
…133337) flutter/engine@00f532d...33fca02 2023-08-25 [email protected] [Impeller] fix validation warning on iOS/macOS when compiling external texture shader. (flutter/engine#45080) 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
…l texture shader. (flutter#45080) ``` [VERBOSE-2:validation.cc(49)] Break on 'ImpellerValidationBreak' to inspect point of failure: Could not create render pipeline for TextureFillExternal Pipeline :Fragment input(s) `user(locn1)` mismatching vertex shader output type(s) or not written by vertex shader ``` Fixes flutter/flutter#133286 Fixes flutter/flutter#133268
Fixes flutter/flutter#133286
Fixes flutter/flutter#133268