#include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct spvDescriptorSetBuffer0 | |
{ | |
texture2d<float, access::write> uImage [[id(0)]]; | |
texture2d<float> uImageRead [[id(1)]]; | |
}; | |
kernel void main0(constant spvDescriptorSetBuffer0& spvDescriptorSet0 [[buffer(0)]], uint3 gl_GlobalInvocationID [[thread_position_in_grid]]) | |
{ | |
int2 coord = int2(gl_GlobalInvocationID.xy); | |
spvDescriptorSet0.uImage.write(spvDescriptorSet0.uImageRead.read(uint2(coord)), uint2(coord)); | |
} | |