float MovementFactor = saturate(sqrt(sqrt(distance(BackN.xy, UV.xy) / 50)));
float ContrastFactor = saturate(1 - (NeighborContrast * NeighborContrast) * 25);
BlendFinal = clamp( BlendFinal + MovementFactor * ContrastFactor, BlendFinal , 1.0 );
MovementFactor is goes from 0 to 1 based on how fast you move. 50 is quite slow, so it only get a middle value when you move the mouse slowly.
ContrastFactor goes from 0 to 1 and is calculated higher up. It is the highest Luminance contrast of one of the 4 neighboring pixels. This means the higher the contrast the less it reduce blur.
The reason for the ContrastFactor is that I don’t want to make high contrast stuff “pop” when you move, so they should stay with about the same level of blurriness as before.