Skip to content

Support transient attachments on Vulkan and Metal #8239

@opstic

Description

@opstic

Is your feature request related to a problem? Please describe.
As it appears suggested by multiple mobile vendors (Arm, Qualcomm, etc), the optimal way to resolve multisampling is by using a transient attachment and doing it in tile memory only. It would much reduce the bandwidth needed for resolve operations and reduce memory usage.

Describe the solution you'd like
Implement a Feature::TRANSIENT_ATTACHMENT and TextureUsages::TRANSIENT like Dawn maybe

Additional context
Arm documentation on this matter for Vulkan
Corresponding gpu_alloc::UsageFlags::Transient
Apple documentation on MTLStorageMode.memoryless

Also maybe have an implementation in OpenGL for efficient resolve operations with EXT_multisampled_render_to_texture?
Arm documentation on this matter for OpenGL
Corresponding Qualcomm code example

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions