Terrain River Tool (Houdini + Unreal Engine)
I built a Houdini Digital Asset for carving river systems into landscapes, running inside Unreal Engine via Houdini Engine.
I wanted artists to be able to make believable rivers quickly, with meshes, shaders, and dressing included, and to keep every edit non-destructive.
Note: I built this for an unannounced product. Everything shown here is test content and development material from building the tool, not the final production version or its real art.
Challenges
- Rivers always had to flow downhill, whatever shape the artist drew.
- Terrain deformation and mesh generation had to stay fast, with as little data passing between Houdini and Unreal as possible.
- Artists needed to trust that edits stayed local and reversible and wouldn’t damage existing terrain work.
- The river mesh needed flowmaps for shaders, accurate collision, and room to scatter assets like rocks.
- Long rivers across large landscapes couldn’t mean long cook times.
- Rivers had to branch and intersect so they could split, merge, or change course.
Features
Artist-drawn splines
Artists drew splines to set the river’s course. The tool kept the water flowing downhill by deforming the terrain and building a guide mesh that follows the landscape’s grade.
One HDA interface
Artists tuned the bank profile, depth falloff, whitewater regions, and scatter toggles per spline, all from one HDA interface.
River mesh, flowmaps, and skirt
The tool generated river meshes with flowmaps for the water shaders, plus a skirt mesh around the river to blend its edges back into the original terrain. There were no visible gaps, even on kilometer-long rivers.
Terrain integration
Deformation was non-destructive, so artists could refine rivers without losing terrain work. Heightfields exported in tiles and unused attributes were pruned, which kept Houdini ↔ Unreal transfers small and performance predictable on large worlds.
Dressing
Procedural scatter placed rocks in the riverbed and along the banks, using the same caching and tiled cooking as the Terrain Scatter System.
Waterfalls and intersections
The tool added waterfalls automatically on steep drops, and intersection logic let rivers split or merge and blend naturally.
Results
One artist could carve, dress, and refine kilometers of river in hours, and the result looked right and was ready for gameplay. Flowmaps, collision meshes, skirt blending, and scatter all came from one tool, with no visible seams between the river geometry and the terrain. Level design could ask for layout changes mid-milestone without holding up the art team.