2 layout(local_size_x = 4) in;
4 shared float sShared[gl_WorkGroupSize.x];
6 layout(std430, binding = 0) readonly buffer SSBO
11 layout(std430, binding = 1) writeonly buffer SSBO2
18 uint ident = gl_GlobalInvocationID.x;
19 float idata = in_data[ident];
21 sShared[gl_LocalInvocationIndex] = idata;
22 memoryBarrierShared();
25 out_data[ident] = sShared[gl_WorkGroupSize.x - gl_LocalInvocationIndex - 1u];