Skip to content

Use objc2-metal #7873

@andyleiserson

Description

@andyleiserson

Description taken from #5641, which also has a bunch more background and context I'm not duplicating here. I'm creating an issue for tracking in our project board.

Use the objc2-metal crate instead of the metal crate.

This will:

  • Improve memory management and soundness
  • Make it easier to quickly support new Metal APIs (they're either already generated for you, or is basically just an update of Xcode away).
  • Possibly allow reducing the usage of Arc, as Metal objects are already reference-counted.
  • Likely improve performance, we use objc_retainAutoreleasedReturnValue underneath the hood to avoid putting objects into the autorelease pool when possible, reducing memory pressure.
  • Make it possible to properly support Add tvOS support #5578 and visionOS.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions