2013-09-01 16:27:21 +02:00
|
|
|
/* Fragment shader dealing with transitions */
|
|
|
|
|
|
|
|
uniform sampler2D currentScene;
|
|
|
|
uniform sampler2D frozenScene;
|
|
|
|
uniform sampler2D transMap;
|
|
|
|
/* Normalized */
|
|
|
|
uniform float prog;
|
|
|
|
/* Vague [0, 512] normalized */
|
|
|
|
uniform float vague;
|
|
|
|
|
2020-02-24 22:29:36 -05:00
|
|
|
in vec2 v_texCoord;
|
2013-09-23 07:15:01 +02:00
|
|
|
|
2020-02-24 22:29:36 -05:00
|
|
|
out vec4 fragColor;
|
|
|
|
|
|
|
|
void main() {
|
|
|
|
float transV = texture(transMap, v_texCoord).r;
|
|
|
|
float cTransV = clamp(transV, prog, prog + vague);
|
|
|
|
lowp float alpha = (cTransV - prog) / vague;
|
|
|
|
|
|
|
|
vec4 newFrag = texture(currentScene, v_texCoord);
|
|
|
|
vec4 oldFrag = texture(frozenScene, v_texCoord);
|
|
|
|
|
|
|
|
fragColor = mix(newFrag, oldFrag, alpha);
|
2013-09-01 16:27:21 +02:00
|
|
|
}
|