// A compute shader to mirror the inputs, in 2x2 blocks. For testing only.

layout(local_size_x = 1) in;

void FUNCNAME()
{
	ivec2 tc = ivec2(gl_GlobalInvocationID.xy) * ivec2(2, 2);
	int offs = int(gl_NumWorkGroups.x) * 2 - 1;

	OUTPUT(ivec2(offs - tc.x,     tc.y),     INPUT(NORMALIZE_TEXTURE_COORDS(vec2(tc.x,     tc.y))));
	OUTPUT(ivec2(offs - tc.x - 1, tc.y),     INPUT(NORMALIZE_TEXTURE_COORDS(vec2(tc.x + 1, tc.y))));
	OUTPUT(ivec2(offs - tc.x,     tc.y + 1), INPUT(NORMALIZE_TEXTURE_COORDS(vec2(tc.x,     tc.y + 1))));
	OUTPUT(ivec2(offs - tc.x - 1, tc.y + 1), INPUT(NORMALIZE_TEXTURE_COORDS(vec2(tc.x + 1, tc.y + 1))));
}
