Process

Fluid and erosion simulation

In 2021 I started experimenting with a fluid simulation. I liked that you can set boundaries and parameters, but can't control things in detail.

First experiments with the fluid simulation

During a summer holiday at the beach, I watched water flow across the sand. It carved ridges, channels and thin layers into the surface. Up close it looked chaotic, but from a distance it had structure. I wanted to see if I could make something like that with code.

Sand, 2021

I started from a basic fluid simulation. I added wave height, wrote a renderer in three.js and played with light and shadow. The results came quickly, and they surprised me.

Wave height and light

Then I added erosion. The water flows over a solid block of sandy material. Where the pressure is high, sand is removed, and at the same time the sand steers the water.

Erosion

This led to a long line of experiments. At some point I stopped using three.js and wrote my own WebGL toolbox. I made monochrome heightmaps, alien landscapes and fully path-traced 3D renders. Some look like sediment, others like wind-blasted cliffs or flowing metal. It is always about surface: something that formed over time. I keep returning to it between other projects.

  • Fluid and erosion simulation
  • Fluid and erosion simulation
  • Fluid and erosion simulation
  • Fluid and erosion simulation