Geometry Nodes

I think I’ve finally managed to simulate hydraulic erosion in Geometry nodes! It’s been made possible with the new raycast node which allows you to sample attributes on other geometries:

https://gfycat.com/bleaksmartbull

It’s based on this code by Job Talle for fast hydraulic erosion simulation, which I converted into a geometry node tree.

It works basically by instancing a bunch of points on the mesh (a.k.a. raindrops) and then simulating them rolling down the terrain step by step, eroding and adding to the terrain each time based on its velocity and how much sediment it’s carrying.

Performance is pretty great considering what it’s doing, and it usually takes around 0.5s to get a result of decent quality.

Here’s a comparison:


And it also outputs an erosion map:

Here’s the blend if you want to take a look :slight_smile:
Erosion simulation.blend (3.9 MB)

73 Likes