Changes in Metal 3.1

Is there a comprehensive list of what has changed in Metal 3.1? The API diff is not really helpful and there is no such document for the shading language. From a cursory glance, this is what I have noticed:

  • curve support for raytracing
  • bfloat support on the GPU
  • option to specify vertex stride at the time of binding rather than as property of the render pass
  • linked function support for mesh shading pipeline (essentially VK_EXT_shader_object from what I understand)?

Anything substantial changes that I have missed?

Post not yet marked as solved Up vote post of jcookie Down vote post of jcookie
842 views
  • Atomic textures is another significant feature
  • Apple has always had VK_EXT_shader_object, it's Vulkan that locked everything down into rigid PSO. I would assume like ray-tracing, that's the ability to splice in bits of code.

  • There's also multi-level instancing for ray tracing acceleration structures.

Replies

There’s some new functionality to help with animation, it seems: CAMetalDisplayLink

  • Great catch! Now we have three types of display links to choose from :) I'd love to add this to my list but it doesn't seem I can edit it...

  • Wow, finally a universal display link across macOS an iOS. That's a big deal if you've ever had to translate between CVDisplayLink and CADisplayLink. CV doesn't have any frame rate controls, and this one has that and latency controls.

Add a Comment