#version 310 es // compute shader - this file was generated by NZSL compiler (Nazara Shading Language) precision highp int; #if GL_FRAGMENT_PRECISION_HIGH precision highp float; #else precision mediump float; #endif layout(local_size_x = 16, local_size_y = 16, local_size_z = 1) in; // header end struct Input { uvec3 indices; }; // struct SSBO omitted (used as UBO/SSBO) layout(binding = 0, std430) readonly buffer _nzslBindingread_ssbo { uint data[]; } read_ssbo; layout(binding = 1, std430) writeonly buffer _nzslBindingwrite_ssbo { uint data[]; } write_ssbo; void main() { Input input_; input_.indices = gl_GlobalInvocationID; write_ssbo.data[input_.indices.x * input_.indices.y] = read_ssbo.data[input_.indices.x * input_.indices.y]; }