I use a render-target with a camera pointing up per the (used to be Ray Wenderlich) article here series here: Creating Interactive Grass in Unreal Engine 4 | Kodeco
RVTs can’t really do anything dynamic in terms of time/distance, but since this is just-a-texture, the RVT doesn’t know it’s been updated since the last frame… ¬_¬
Paint your decals, depth-checks, whatever into that thing and then sample that as a texture in your landscape material. More advanced usage would then be tracking additional RVT-targets per landscape-section, and it can also be used for capturing other information like normals, etc.
If you want realtime deformation be sure to enable ‘realtime updates’ inside the RVT volume settings (it costs you though). It’s surely not so expensive as updates on the PBR portion, but it costs you… RVTs are rendered in tiles, as they are marked. Continuous page updates ensures they are updated every frame, so you claw-back some of the performance gain on the height part (it’s on the VT properties)…