uniform samplerRECT samp0 : register(s0); void main(out float4 ocol0 : COLOR0, in float2 uv0 : TEXCOORD0) { float4 c0 = texRECT(samp0, uv0).rgba; //Change this number to increase the pixel size. int pixelSize = 2; float red = 0.0; float green = 0.0; float blue = 0.0; int val = uv0[0]; int val2 = uv0[1]; val = val % pixelSize; val2 = val2 % pixelSize; if(val == 0 && val2 == 0 ){ if (c0.r < 0.06 && c0.r >= 0) red = 0.06; if (c0.r < 0.13 && c0.r >= 0.06) red = 0.13; if (c0.r < 0.26 && c0.r >= 0.13) red = 0.26; if (c0.r < 0.33 && c0.r >= 0.26) red = 0.33; if (c0.r <0.46 && c0.r >= 0.33) red = 0.46; if (c0.r <0.60 && c0.r >= 0.46) red = 0.60; if (c0.r <0.73 && c0.r >= 0.60) red = 0.73; if (c0.r <0.80 && c0.r >= 0.73) red = 0.80; if (c0.r <0.93 && c0.r >= 0.80) red = 0.93; if (c0.r <=1 && c0.r >= 0.93) red = 1; if (c0.b < 0.06 && c0.b >= 0) blue = 0.06; if (c0.b < 0.13 && c0.b >= 0.06) blue = 0.13; if (c0.b < 0.26 && c0.b >= 0.13) blue = 0.26; if (c0.b < 0.33 && c0.b >= 0.26) blue = 0.33; if (c0.b <0.46 && c0.b >= 0.33) blue = 0.46; if (c0.b <0.60 && c0.b >= 0.46) blue = 0.60; if (c0.b <0.73 && c0.b >= 0.60) blue = 0.73; if (c0.b <0.80 && c0.b >= 0.73) blue = 0.80; if( c0.b <0.93 && c0.b >= 0.80) blue = 0.93; if (c0.b <=1 && c0.b >= 0.93) blue = 1; if (c0.g < 0.06 && c0.g >= 0) green = 0.06; if (c0.g < 0.13 && c0.g >= 0.06) green = 0.13; if (c0.g < 0.26 && c0.g >= 0.13) green = 0.26; if (c0.g < 0.33 && c0.g >= 0.26) green = 0.33; if (c0.g <0.46 && c0.g >= 0.33) green = 0.46; if (c0.g <0.60 && c0.g >= 0.46) green = 0.60; if (c0.g <0.73 && c0.g >= 0.60) green = 0.73; if (c0.g <0.80 && c0.g >= 0.73) green = 0.80; if( c0.g <0.93 && c0.g >= 0.80) green = 0.93; if (c0.g <=1 && c0.g >= 0.93) green = 1; } else{ float4 c1 = texRECT(samp0, uv0-float2(val, val2)).rgba; if (c1.r < 0.06 && c1.r >= 0) red = 0.06; if (c1.r < 0.13 && c1.r >= 0.06) red = 0.13; if (c1.r < 0.26 && c1.r >= 0.13) red = 0.26; if (c1.r < 0.33 && c1.r >= 0.26) red = 0.33; if (c1.r <0.46 && c1.r >= 0.33) red = 0.46; if (c1.r <0.60 && c1.r >= 0.46) red = 0.60; if (c1.r <0.73 && c1.r >= 0.60) red = 0.73; if (c1.r <0.80 && c1.r >= 0.73) red = 0.80; if (c1.r <0.93 && c1.r >= 0.80) red = 0.93; if (c1.r <=1 && c1.r >= 0.93) red = 1; if (c1.b < 0.06 && c1.b >= 0) blue = 0.06; if (c1.b < 0.13 && c1.b >= 0.06) blue = 0.13; if (c1.b < 0.26 && c1.b >= 0.13) blue = 0.26; if (c1.b < 0.33 && c1.b >= 0.26) blue = 0.33; if (c1.b <0.46 && c1.b >= 0.33) blue = 0.46; if (c1.b <0.60 && c1.b >= 0.46) blue = 0.60; if (c1.b <0.73 && c1.b >= 0.60) blue = 0.73; if (c1.b <0.80 && c1.b >= 0.73) blue = 0.80; if( c1.b <0.93 && c1.b >= 0.80) blue = 0.93; if (c1.b <=1 && c1.b >= 0.93) blue = 1; if (c1.g < 0.06 && c1.g >= 0) green = 0.06; if (c1.g < 0.13 && c1.g >= 0.06) green = 0.13; if (c1.g < 0.26 && c1.g >= 0.13) green = 0.26; if (c1.g < 0.33 && c1.g >= 0.26) green = 0.33; if (c1.g <0.46 && c1.g >= 0.33) green = 0.46; if (c1.g <0.60 && c1.g >= 0.46) green = 0.60; if (c1.g <0.73 && c1.g >= 0.60) green = 0.73; if (c1.g <0.80 && c1.g >= 0.73) green = 0.80; if( c1.g <0.93 && c1.g >= 0.80) green = 0.93; if ( c1.g >= 0.93) green = 1; } ocol0 = float4(red, green, blue, c0.a); }