Swift 金属能实现交换链吗?

Swift 金属能实现交换链吗?,swift,graphics,metal,Swift,Graphics,Metal,我试着让它类似于swapchain使用 renderPassDescriptor.colorAttachments[0]。loadAction 但这是不可能的,因为它获取了一个与以前的可绘制文件不同的可绘制文件 因为drawable的纹理无法交换,我认为交换链无法实现 metal可以实现交换链吗?在metal中,交换链是通过从每个帧上的CametLayer中检索新的MTLDrawable并从该可绘制文件中检索MTLTexture来实现的 可用的可绘制内容的数量非常有限(通常为3个),因此需要在渲

我试着让它类似于swapchain使用

renderPassDescriptor.colorAttachments[0]。loadAction

但这是不可能的,因为它获取了一个与以前的可绘制文件不同的可绘制文件

因为drawable的纹理无法交换,我认为交换链无法实现


metal可以实现交换链吗?

在metal中,交换链是通过从每个帧上的
CametLayer
中检索新的
MTLDrawable
并从该可绘制文件中检索
MTLTexture
来实现的

可用的可绘制内容的数量非常有限(通常为3个),因此需要在渲染循环中仔细管理这些内容


苹果的文档在这方面不是很好,但是你可以找到。本文档是按照在自定义视图中包含swapchain逻辑的方式编写的,但您不必这样做。您可以将交换链作为单独渲染器类的一部分编写,等等。

在Metal中,交换链是通过从每个帧上的
CametLayer
检索新的
MTLDrawable
并从该可绘制文件检索
MTLTexture
来实现的

可用的可绘制内容的数量非常有限(通常为3个),因此需要在渲染循环中仔细管理这些内容

苹果的文档在这方面不是很好,但是你可以找到。本文档是按照在自定义视图中包含swapchain逻辑的方式编写的,但您不必这样做。可以将swapchain作为单独的渲染器类的一部分编写,等等