有没有像 Metal 中的 clCreateSubBuffer 一样的方法?

Posted

技术标签:

【中文标题】有没有像 Metal 中的 clCreateSubBuffer 一样的方法?【英文标题】:is there some method that like clCreateSubBuffer in Metal? 【发布时间】:2018-08-20 14:17:16 【问题描述】:

我正在开发一个 ios 应用程序并尝试使用 Metal 来加快计算速度。 我希望计算不同 MTLBuffer 中的数据并输出到同一个 dest MTLBuffer 的不同段中。 我知道在 OpenCL 中我可以使用 clCreateSubBuffer 以不同的偏移量访问缓冲区的不同部分。但我在 Metal 中找不到这样的方法。 有什么解决办法吗?或者我只是想念什么?

【问题讨论】:

【参考方案1】:

只需将 MTLBuffer 绑定到具有不同偏移量的 MTLComputeCommandEncoder:

encoder.setBuffer(myBuffer, offset: XXX, index: 0)

【讨论】:

以上是关于有没有像 Metal 中的 clCreateSubBuffer 一样的方法?的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 上的 Metal 中未触发 addPresentedHandler

iOS Metal:启用用户交互

Metal C中的memset问题

Metal(iOS)中的多重采样/锯齿状边缘

“metal::texturecube”中没有名为“read”的成员

Apple Metal API“setVertexBuffer:offset:atIndex:”中的问题