Distortion: Distortion maps affect the position of pixels in a texture coordinate (0,1).
Flow maps: Directed **distortion maps for both the X (red) and Y (green) channels of texture coordinates.
Directional movement of pixels over time. - Keith Guerrette
Here is how a flow map works.
Map the texture coordinates to the 0-1 space. Remember that texture coordinates are simply 2 gradients from 0-1 in the X and Y directions, the purpose being that they tell the shader that each pixel is unique and where it is located; then based on the UV's of the object how to apply the texture. So, if we distort the gradient (add noise, smudge it, etc. . .) we are effectively telling the shader to distort the location of the UV's of the object, thereby distorting the texture when it is applied. If you pan the texture (flow) across the now distorted UV's, the texture will be distorted per the flow map.
Splitting distortion between the red and green channels (RG), distort the position of the pixels of the sampled texture according to the distortion given of the texture coordinates.
You can use a normal map as a distortion by removing the blue channel. This is a great way to create new distortions like the following:
https://twitter.com/klemen_lozar/status/987743611289681920
https://twitter.com/klemen_lozar/status/987762338596929536
siggraph2010_vlachos_waterflow.pdf
Courtesy Alex Vlachos, Valve, Siggraph 2010 Conference
Courtesy Alex Vlachos, Valve, Siggraph 2010 Conference
Primarily an X (red) based distortion map, the red channel is heavily distorted causing the the red smears. There is some distortion along Y (green), but not a lot. See the image below to see the effect that this distortion map has on the noise texture. Courtesy Alex Vlachos, Valve, Siggraph 2010 Conference
Courtesy Alex Vlachos, Valve, Siggraph 2010 Conference
Courtesy Alex Vlachos, Valve, Siggraph 2010 Conference