#version 300 es
in mediump vec3 uv;
out lowp vec4 outColor;
uniform sampler2D tex;
uniform sampler3D vol;
void main()
{
	lowp vec4 c;

	// texture offset forms
	c = textureOffset (tex, uv.xy, ivec2(-2,-3));
	c += textureOffset (tex, uv.xy, ivec2(4,5), 0.5);
	c += textureOffset (vol, uv.xyz, ivec3(-2,-3,-4));
	c += textureOffset (vol, uv.xyz, ivec3(4,5,6), -0.5);

	// texelFetch forms
	c += texelFetch (tex, ivec2(1,2), 1);
	c += texelFetch (vol, ivec3(1,2,3), 2);
	c += texelFetchOffset (tex, ivec2(1,2), 3, ivec2(-2,-3));
	c += texelFetchOffset (vol, ivec3(1,2,3), 0, ivec3(-2,-3,-4));

	outColor = c;
}
