Ya thats a pretty good idea.
To build on that, you could even just make a bunch of textures that are used as texel drawing offsets.
like a texture that that has is r for x be like 3 pixels left and add that to the actual current texel position.
A bunch of those each frame could actually make a pretty cool little animation even.
You’ll have to make a pixel shader that takes two textures but thats pretty easy.
Generating that for this could probably be handled by hand drawing out the frames.
If you really want to do the mesh vertice thing…
I was digging thru my folders i still have a old NURBS class i made and a couple helper classes for it. That will generate any meshes you might need in any way you want them. It’s so damn sloppy and ugly i cringe to give it out but it’ll work. It will generate up to as much detail as you like input or output wise, it’ll generate 3d surfaces if you wanted but can easily generate distorted meshes.
Or you could use it i suppose to even generate distorted images as discussed above if you cleaned it up a bit.