Fuzz
From Adobe Labs
This is kinda like noise, complete with a psuedo-random number generator based on coordinates and a seed, however instead of creating random pixels it just shuffles them around a little bit.
kernel Fuzz
{
parameter float amount
<
minValue:0.0;
maxValue:512.0;
defaultValue:2.0;
>;
parameter float seed
<
minValue:0;
maxValue:1000;
defaultValue:0;
>;
void
evaluatePixel(in image4 src, out pixel4 dst)
{
float x = outCoord().x;
float y = outCoord().y;
float s = (sqrt(x*y)+x+y+seed);
float r = tan(cos(s*s+cos(s+s*s-s*s*s)-s+s*s+cos(s*3.+s*s))-cos(s*s-s+s*s*cos(s)+sin(s)*sin(s*s)));
float2 psudrand = float2(sin(r), cos(r));
dst = sampleNearest(src,outCoord()+amount*psudrand);
}
}
