That is really interesting. Is it more efficient to generate height maps in a pixel shader than to do the calculations on a vertex shader and just modify the position?
The heightmap and normal map are roughly 16x the resolution of the mesh tiles. At one point I had a separate CPU-side noise generator to produce the meshes, but vertex-texture-fetch seems to work just fine.
Also are each of your quads/tiles individual meshes?
There are all the exact same mesh, instanced once per tile.