Skip to content

[Impeller] Deprecate and remove Texture::SetContents in favor of BlitPass. #147945

@jonahwilliams

Description

@jonahwilliams

This API has a few problems, namely:

  • It exists at the core layer, before command buffers are defined. But encoding/uploading safely requires a cmd buffer object on Vulkan and Metal. Vulkan works around this by internally creating a cmd buffer and performing a copy to a VMA buffer, but this is extra wasteful.
  • The metal implementation uses an unsafe API.
  • It duplicates functionality that already mostly exists in the BlitPass.

Ripping out in one go is too difficult though, as its used all over the place and exposed via flutter gpu.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work listc: new featureNothing broken; request for a new capabilitye: impellerImpeller rendering backend issues and features requeststeam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions