Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@chinmaygarde
Copy link
Member

@chinmaygarde chinmaygarde commented Nov 5, 2019

By default, the CAMetalLayer backing store is a framebuffer attachment that is
only optimized for display. However, effects such as backdrop filters require
renderbuffer readback. Making these calls will result in exceptions. Disable the
write only optimization on such backing stores.

Fixes flutter/flutter#43555
Fixes flutter/flutter#43789

By default, the CAMetalLayer backing store is a framebuffer attachment that is
only optimized for display. However, effects such as backdrop filters require
renderbuffer readback. Making this calls will result in exceptions. Disable the
write only optimization on such backing store.

Fixes flutter/flutter#43555
Copy link
Contributor

@dnfield dnfield left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Can we optimize this by updating the layer tree so that it sets this bit if a backdrop filter is added?

@chinmaygarde
Copy link
Member Author

Can we optimize this by updating the layer tree so that it sets this bit if a backdrop filter is added?

Yes. I can do this in a later patch. Currently, the performance characteristics should match OpenGL.

@chinmaygarde chinmaygarde merged commit 7b968ff into flutter:master Nov 5, 2019
@chinmaygarde chinmaygarde deleted the fixcopysurfaceasblit branch November 5, 2019 01:28
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 5, 2019
engine-flutter-autoroll added a commit to flutter/flutter that referenced this pull request Nov 5, 2019
[email protected]:flutter/engine.git/compare/e73c9c8f6bd5...7b968ff

git log e73c9c8..7b968ff --no-merges --oneline
2019-11-05 [email protected] Ensure that the CAMetalLayer FBO attachments can be read from. (flutter/engine#13643)
2019-11-04 [email protected] Revert "Added new lifecycle enum (#11913)" (flutter/engine#13632)
2019-11-04 [email protected] Added new lifecycle enum (flutter/engine#11913)


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] on the revert to ensure that a human
is aware of the problem.

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/+/master/autoroll/README.md
Inconnu08 pushed a commit to Inconnu08/flutter that referenced this pull request Nov 26, 2019
[email protected]:flutter/engine.git/compare/e73c9c8f6bd5...7b968ff

git log e73c9c8..7b968ff --no-merges --oneline
2019-11-05 [email protected] Ensure that the CAMetalLayer FBO attachments can be read from. (flutter/engine#13643)
2019-11-04 [email protected] Revert "Added new lifecycle enum (flutter#11913)" (flutter/engine#13632)
2019-11-04 [email protected] Added new lifecycle enum (flutter/engine#11913)


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] on the revert to ensure that a human
is aware of the problem.

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/+/master/autoroll/README.md
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Determine if Metal needs an off-screen surface Crash in GrMtlGPU::copySurfaceAsBlit.

3 participants