subtype idKGScriptParserduration?ð framebaseencodingparms inputFormat inputCountpublicurltitlewww.fxscript.orguitype typedefaultstringvalueblurtype blur typeuiinfolabelszoomspinmin?€max@?€?€ blurstepssteps?€ C@€@€rampBHcenterpt Centre Pointamountamount CHBÈBÈ$A  acceleration Acceleration @@?€?€privatestaticsscriptù//Inspired by the excellent wind blur cross script by Matt Sandström (mattias@beauty.se) //This offers a bit more scope for user tweakage, and the option of a non-directional blur //This filter is freeware, released under the GPL license. //You can do what you want with it as long as you leave it unencoded and include this message. transition "radial blur cross" group "stib's transitions" wipeCode(0, 100); producesAlpha; input url, "www.fxscript.org", Label, "string" input blurType, "blur type", RadioGroup, 1, "zoom","spin" input BlurSteps, "steps", Slider, 4, 1, 128 ramp 50 input centerPt, "Centre Point", Point, 0, 0; input amount, "amount", Slider, 100, 0, 200 ramp 20; input Acceleration, "Acceleration", Slider, 1, 0, 3; code float w,h,BlendAmount, BlurFactor, spin; dimensionsof(dest,w,h); image buf1[w][h]; if (blurType == 1) spin = false else spin = true end if Amount = (Amount/100)*(h+w)/2 //scale the blur amount to match the size of the screen BlurFactor = 1-power(Abs(100-200*ratio)/100,acceleration); //ramps up from zero to 1 and back to 0 with acceleration determining the sharpness of the peak // the factor of 100 is because Abs only handles integers, so we scale ratio up if (ratio<= 0.5) BlendAmount = BlurFactor/2; else BlendAmount = 1- BlurFactor/2 end if; blend(src1, src2, buf1, BlendAmount); RadialBlur(buf1, dest, centerPt, amount*BlurFactor, spin, BlurSteps, aspectof(buf1)) //version 2 has the blend taking place before the blur - so you only need to blur one image. Of course! nameradial blur crossscriptid5groupstib's transitionswipecode wipeaccuracyd producesalphaencoded