You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
688 B
GLSL
35 lines
688 B
GLSL
@module goodpixel
|
|
|
|
@vs vs
|
|
in vec4 coord;
|
|
out vec2 texUV;
|
|
void main() {
|
|
gl_Position = vec4(coord.xy, 0.0, 1.0);
|
|
texUV = coord.zw;
|
|
}
|
|
@end
|
|
|
|
@fs fs
|
|
uniform sampler2D iChannel0;
|
|
uniform fs_params {
|
|
vec4 iColor;
|
|
};
|
|
in vec2 texUV;
|
|
out vec4 fragColor;
|
|
|
|
vec4 texture2DAA(sampler2D tex, vec2 uv) {
|
|
vec2 texsize = vec2(textureSize(tex,0));
|
|
vec2 uv_texspace = uv*texsize;
|
|
vec2 seam = floor(uv_texspace+.5);
|
|
uv_texspace = (uv_texspace-seam)/fwidth(uv_texspace)+seam;
|
|
uv_texspace = clamp(uv_texspace, seam-.5, seam+.5);
|
|
return texture(tex, uv_texspace/texsize);
|
|
}
|
|
|
|
void main() {
|
|
fragColor = texture2DAA(iChannel0, texUV) * iColor;
|
|
}
|
|
@end
|
|
|
|
@program program vs fs
|