#version 430 core layout (local_size_x = 2) in; layout(std430, binding=0) readonly buffer Input { float offset; }; layout(std430, binding=1) writeonly buffer Output { float data[]; }; void main(){ data[gl_GlobalInvocationID.x] = 100 * gl_GlobalInvocationID.x + gl_LocalInvocationID.x + offset; }