#pragma BLENDER_REQUIRE(gpu_shader_compositor_texture_utilities.glsl)

void main()
{
  ivec2 texel = ivec2(gl_GlobalInvocationID.xy);
  /* The lower bound is inclusive and upper bound is exclusive. */
  bool is_inside = all(greaterThanEqual(texel, lower_bound)) && all(lessThan(texel, upper_bound));
  /* Write the pixel color if it is inside the cropping region, otherwise, write zero. */
  vec4 color = is_inside ? texture_load(input_tx, texel) : vec4(0.0);
  imageStore(output_img, texel, color);
}
