UNPKG

phaser

Version:

A fast, free and fun HTML5 Game Framework for Desktop and Mobile web browsers from the team at Phaser Studio Inc.

36 lines (35 loc) 1.05 kB
module.exports = [ '#define SHADER_NAME WIPE_FS', 'precision mediump float;', 'uniform sampler2D uMainSampler;', 'uniform vec4 config;', 'uniform bool reveal;', 'varying vec2 outTexCoord;', 'void main ()', '{', ' vec2 uv = outTexCoord;', ' vec4 color0;', ' vec4 color1;', ' if (reveal)', ' {', ' color0 = vec4(0);', ' color1 = texture2D(uMainSampler, uv);', ' }', ' else', ' {', ' color0 = texture2D(uMainSampler, uv);', ' color1 = vec4(0);', ' }', ' float distance = config.x;', ' float width = config.y;', ' float direction = config.z;', ' float axis = uv.x;', ' if (config.w == 1.0)', ' {', ' axis = uv.y;', ' }', ' float adjust = mix(width, -width, distance);', ' float value = smoothstep(distance - width, distance + width, abs(direction - axis) + adjust);', ' gl_FragColor = mix(color1, color0, value);', '}', ].join('\n');