
MorphTransition
by Mewatools
Morph transition between 2 images
Script
// "MorphTransition" by Mewatools <hugo@mewatools.com> is licensed under CC BY 4.0
// Adapted by Mewatools
// Author: paniq
// License: MIT
shaderSource = "
void mainImage( out vec4 fragColor, in vec2 fragCoordA, in vec2 fragCoordB )
{
vec4 ca = texture2D(iChannel0, fragCoordA);
vec4 cb = texture2D(iChannel1, fragCoordB);
vec2 oa = (((ca.rg+ca.b)*0.5)*2.0-1.0);
vec2 ob = (((cb.rg+cb.b)*0.5)*2.0-1.0);
vec2 oc = mix(oa,ob,0.5)*strength;
float w0 = progress;
float w1 = 1.0-w0;
fragColor = mix( texture2D(iChannel0, (fragCoordA+oc*w0)),
texture2D(iChannel1, (fragCoordB-oc*w1)),
progress);
}";
node = ShaderNode( shaderSource, "MorphTransition" );
node.addShaderInput( "iChannel0" );
node.addShaderInput( "iChannel1" );
uiControl = node.addFloatControl("progress", 0.5);
uiControl.setName("Progress");
uiControl.setStep(0.0001);
uiControl.setRange(0.0, 1.0);
uiControl = node.addFloatControl("strength", 0.1);
uiControl.setName("Strength");
uiControl.setStep(0.0001);
uiControl.setRange(0.0, 1.0);
node.finishAdding();
File Details
- File Name: MorphTransition.mw
- Last Update: May 22nd, 2021
- Category: Merge