Can Virtual Heightfield Mesh / RVT be used for procedurally generated terrain?

I am creating real-sized planets, by using quadtrees and noise to generate vertices based on your position. When standing on the surface, the resolution is about one square meter between vertices on a terrain actor roughly 100 meters across. When you move close to the neighboring chunk, it will subdivide into the same resolution etc.
However, I require more detail on the ground. No matter how beautiful the textures are, they are flat. In UE4 I could just slap a displacement map on the material and it was freaking gorgeous. That is no longer possible in UE5.
I am not able to use the “World Position Offset”-node in the materials, as I don’t have the capacity to compute that many vertices.

So, people tell me to use Virtual Heightfield Mesh. However, no two tutorials or guides are the same, and most posts here talk about issues with shading, blurriness and lighting issues.
Is it at all possible to use Virtual Heightfield Mesh for a procedural terrain like this? Keep in mind that the planet is Earth-sized, and Z+ is no longer “up”. Also note that I am not using ALandscape or anything like that; when I hit “Play” in editor I don’t have anything in my level, everything is spawned in runtime using RMC (basically the same as ProceduralMeshComponent).
I am skeptical about the “volume” box required for this, and how mobile this setup is.

If not, what are my options? Is this simply not possible anymore? People also say “you can probably just go into the engine and re-implement material tessellation”, but I find it hard to believe that I’m the first one to encounter this use-case and that nobody has solved this one way or another before me…

1 Like

Most likely you can but I haven’t tried so I hesitate to say. You would need to have the terrain write a vectorized displacement to the render target that the heightfield mesh reads from. In other words, it would need to tell it what direction to displace in and the amount in order to deal with the inconsistent Z direction.

If that doesn’t work, or you don’t want to bother, then consider using parallax occlusion mapping.
It is not without it’s faults or limitations, but it can work very well. Because it is per pixel displacement, it can be more detailed than tesselation - but is more prone to artifacts.