// Fragment Shader – file "minimal.frag" layout(location = 1)in vec2 in_UV; uniform SAMPLER_TYPE g_tex2DTest; layout(location = 0) out vec4 out_Color; void main(void) { vec2 TexSize; TexSize = vec2(textureSize(g_tex2DTest, 0)); vec4 texel0 = vec4(texelFetch(g_tex2DTest, ivec2(in_UV*TexSize), 0)); TexSize = vec2(textureSize(g_tex2DTest, 2)); vec4 texel1 = vec4(texelFetch(g_tex2DTest, ivec2(in_UV*TexSize), 2)); TexSize = vec2(textureSize(g_tex2DTest, 4)); vec4 texel2 = vec4(texelFetch(g_tex2DTest, ivec2(in_UV*TexSize), 4)); TexSize = vec2(textureSize(g_tex2DTest, 5)); vec4 texel3 = vec4(texelFetch(g_tex2DTest, ivec2(in_UV*TexSize), 5)); if( in_UV.x < 0.5 && in_UV.y < 0.5 ) out_Color = texel0 / 127.f; else if( in_UV.x > 0.5 && in_UV.y < 0.5 ) out_Color = texel1 / 127.f; else if( in_UV.x < 0.5 && in_UV.y > 0.5 ) out_Color = texel2 / 127.f; else out_Color = texel3 / 127.f; }