/*{ "CATEGORIES": [ "Wipe" ], "CREDIT": "Automatically converted from https://www.github.com/gl-transitions/gl-transitions/tree/master/Radial.glsl", "DESCRIPTION": "", "INPUTS": [ { "NAME": "startImage", "TYPE": "image" }, { "NAME": "endImage", "TYPE": "image" }, { "DEFAULT": 0, "MAX": 1, "MIN": 0, "NAME": "progress", "TYPE": "float" }, { "DEFAULT": 0.5, "MAX": 1, "MIN": 0, "NAME": "smoothness", "TYPE": "float" } ], "ISFVSN": "2" } */ vec4 getFromColor(vec2 inUV) { return IMG_NORM_PIXEL(startImage, inUV); } vec4 getToColor(vec2 inUV) { return IMG_NORM_PIXEL(endImage, inUV); } // License: MIT // Author: Xaychru // ported by gre from https://gist.github.com/Xaychru/ce1d48f0ce00bb379750 const float PI = 3.141592653589; vec4 transition(vec2 p) { vec2 rp = p*2.-1.; return mix( getToColor(p), getFromColor(p), smoothstep(0., smoothness, atan(rp.y,rp.x) - (progress-.5) * PI * 2.5) ); } void main() { gl_FragColor = transition(isf_FragNormCoord.xy); }