22 lines
902 B
Plaintext
22 lines
902 B
Plaintext
|
#version 120
|
||
|
|
||
|
uniform sampler2D DiffuseSampler;
|
||
|
|
||
|
varying vec2 texCoord;
|
||
|
varying vec2 oneTexel;
|
||
|
|
||
|
void main(){
|
||
|
vec4 center = texture2D(DiffuseSampler, texCoord);
|
||
|
vec4 left = texture2D(DiffuseSampler, texCoord - vec2(oneTexel.x, 0.0));
|
||
|
vec4 right = texture2D(DiffuseSampler, texCoord + vec2(oneTexel.x, 0.0));
|
||
|
vec4 up = texture2D(DiffuseSampler, texCoord - vec2(0.0, oneTexel.y));
|
||
|
vec4 down = texture2D(DiffuseSampler, texCoord + vec2(0.0, oneTexel.y));
|
||
|
float leftDiff = abs(center.a - left.a);
|
||
|
float rightDiff = abs(center.a - right.a);
|
||
|
float upDiff = abs(center.a - up.a);
|
||
|
float downDiff = abs(center.a - down.a);
|
||
|
float total = clamp(leftDiff + rightDiff + upDiff + downDiff, 0.0, 1.0);
|
||
|
vec3 outColor = center.rgb * center.a + left.rgb * left.a + right.rgb * right.a + up.rgb * up.a + down.rgb * down.a;
|
||
|
gl_FragColor = vec4(outColor * 0.2, total);
|
||
|
}
|