#version 450 layout(local_size_x = 64) in; layout(binding = 0) writeonly uniform image1DArray dst; layout(push_constant) uniform u_info_t { vec4 clear_value; ivec2 dst_offset; ivec2 dst_extent; } u_info; void main() { ivec3 thread_id = ivec3(gl_GlobalInvocationID); if (thread_id.x < u_info.dst_extent.x) imageStore(dst, ivec2(u_info.dst_offset.x + thread_id.x, thread_id.y), u_info.clear_value); }