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.31 kB
module.exports = [ '#pragma phaserTemplate(shaderName)', 'precision mediump float;', 'uniform sampler2D uMainSampler;', 'uniform sampler2D uMainSampler2;', 'uniform vec4 uProgress_WipeWidth_Direction_Axis;', 'uniform float uReveal;', 'varying vec2 outTexCoord;', 'void main ()', '{', ' vec4 color0;', ' vec4 color1;', ' if (uReveal == 0.0)', ' {', ' color0 = texture2D(uMainSampler, outTexCoord);', ' color1 = texture2D(uMainSampler2, outTexCoord);', ' }', ' else', ' {', ' color0 = texture2D(uMainSampler2, outTexCoord);', ' color1 = texture2D(uMainSampler, outTexCoord);', ' }', ' float distance = uProgress_WipeWidth_Direction_Axis.x;', ' float width = uProgress_WipeWidth_Direction_Axis.y;', ' float direction = uProgress_WipeWidth_Direction_Axis.z;', ' float axis = outTexCoord.x;', ' if (uProgress_WipeWidth_Direction_Axis.w == 1.0)', ' {', ' axis = outTexCoord.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');