Skip to content

[Impeller] Image/Color filters should return an Entity and not a Snapshot #124175

@jonahwilliams

Description

@jonahwilliams

More general case of #124025

Currently all of our image and color filters render to a subpass, and then composite that subpass into the parent via Entity::FromSnapshot. These should be re-written to return an entity directly and elide the subpass if opacity doesn't need to be absorbed.

As a consequence all of our image/color filters are using 2x the texture the operations that would otherwise be needed.

The caveat is that my PR to do this for advanced blends hit an issue with surprising behavior of the snapshot transform which is different depending on whether the filter is applied to a subpass or to a contents directly: flutter/engine#40927

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work liste: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions