Sdfgeoffs hacky node blur

Hello blenderheads, I have a present for you today: a rather hacky solution to blur using nodes.

Does it use multisampling? It doesn’t have to.
Does it make things blurry? Well, eh, grainy

How it works:
You distort the UV map by a random amount. This takes part of one image and places them in a radius somewhere around where you are expecting the image to show. This means that for a single pass you get grainyness, but don’t have to sample very much to get a large blur radius that looks acceptable

What it looks like:

And up close:

Yes it’s grainy, but compare that to the minimum of 3 passes to get any sort of blur using regular multisampling and where you can clearly see the samples.

What can you do with it:
Well the obvious one is blur textures, and all the good things this means (edge detect in textures etc.)

Example File:
NoiseBlur.blend (1 MB)

I’ve implemented it as a node group that is easy to use and allows a configurable blur radius and seed.

Credit where credit is due:
This whole lot was inspired by a post of martinsh’s I can’t find at the moment. It was called ‘dithered blur’ or something to that effect.

Different blur radius’ (all single pass)

Mixing it with the original image depending on luminosity allows bloom: (single pass)

And running a difference allows a noisy edge-detect: (single pass)

This is cool thing. I already knew of it, but other may have not knew of it. So they need this resource.

Tried this with the default 2d blur filter and it works quite well. Grain is still noticeable but is a lot smoother than before.