Read/Write iOS 上的相同 MTLTexture
Read/Write same MTLTexture on iOS
texture2d
access::read_write
限定符似乎仅适用于 OSX。有没有办法在 kernel
(或其他)金属函数中 read/write 相同的纹理?
原因是写入的纹理值可能不是最终的,可以由其他线程更新。
感谢@warrenm 的提示。它使用原子缓冲区工作
device atomic_uint *buf [[ buffer(0) ]]
执行以下步骤:
- 我在一个单独的
kernel
函数中初始化我的原子缓冲区,该函数在操作之前运行
- 下一个
kernel
使用 atomic_fetch_min_explicit(buf[pos], val, memory_order_relaxed)
计算特定坐标的最小值
texture2d
access::read_write
限定符似乎仅适用于 OSX。有没有办法在 kernel
(或其他)金属函数中 read/write 相同的纹理?
原因是写入的纹理值可能不是最终的,可以由其他线程更新。
感谢@warrenm 的提示。它使用原子缓冲区工作
device atomic_uint *buf [[ buffer(0) ]]
执行以下步骤:
- 我在一个单独的
kernel
函数中初始化我的原子缓冲区,该函数在操作之前运行 - 下一个
kernel
使用atomic_fetch_min_explicit(buf[pos], val, memory_order_relaxed)
计算特定坐标的最小值