cocos shader 之 马赛克滤镜

来源:互联网 发布:股票配资网站源码 编辑:程序博客网 时间:2024/05/18 02:12

效果:


VSH:

#ifdef OPENGL_ESprecision mediump vec2;precision mediump float;#endif// Attributesattribute vec3 a_position;attribute vec2 a_texCoord;attribute vec4 a_color;// Varyings#ifdef GL_ESvarying vec2 v_texCoord;#elsevarying vec2 v_texCoord;#endifvarying vec4 v_fragmentColor;void main(){    gl_Position = CC_PMatrix * vec4(a_position, 1.0);    v_texCoord = a_texCoord;    v_fragmentColor = a_color;}


FSH:

#ifdef GL_ESprecision mediump float;#endifuniform sampler2D u_texture;varying vec2 v_texCoord;varying vec4 v_fragmentColor;const vec3 nLightPlus = vec3(0.1, 0.1, 0.1);uniform vec2 resolution;void main() {    vec4 col = texture2D(CC_Texture0, v_texCoord );    float x = v_texCoord.x * resolution.x;    float y = v_texCoord.y * resolution.y;    float realX = floor(x/5.0 + 0.5) * 5.0;    float realY = floor(y/5.0 + 0.5) * 5.0;    gl_FragColor = texture2D(CC_Texture0, vec2(realX/resolution.x, realY/resolution.y) );}


0 0