Extracting refraction info and mix
Seems its not interested by anyone, but i'had solved the problem.

Here is the video https://youtu.be/S4yfnxffJmA

And here is preview



Actually i've compressed all the 3 channels to one (to 6x6x7 palette), but it was not looking good. Had to refactor many things so there are 4 + 4 channels, (2 for displacement + 2 are free for future use) &amp; 4 for tint as standard RGBA.

Here is the final PS

float4 PixelShaderDisplacementFunction(VertexShaderOutput input) : COLOR0
{
    float4 color = tex2D(assembleSampler, input.UV.xy);
    float2 UV = input.Position1.xy + (color.xy * 2 - 1) / ZoomMultipliedBy64;
    float4 srcColor = tex2D(screenSampler, UV);
    return srcColor;
}


ZoomMultipliedBy64 = RenderMatrix.M44  * 64f, to neutralize effect of zooming