[2018] Heat Distortion Effect (+ Bubbles too!)

Project:

A heat distortion effect I made! Uses a fast 3D particle system and a shader that samples from a copy of the screen (While still somewhat obeying depth)

It also turned out that it could make a nice bubble or lense distortion effect with few modifications. 

I also decided to see if I could port the code to Unity, and it turned out I could! With relative ease, too, which was a nice bonus. 

(As you can tell, it does oversample a bit here, but that's purely exaggerated for this screenshot - I actually altered the code otherwise so this effect hardly ever happens by reducing sample range based on screenspace depth and reducing sample range in general - this still gives a good effect, but reduces the effects of breaking reality)

(Worth mentioning at least, but I don't own Mario or any related properties, he's a Nintendo thing, he just had a good shape and palette for testing stuff. I did actually do the rigging and animation for him, though)