Surface Turbulence in Houdini
R&D
For a project with Stormborn Studios, I implemented Surface Turbulence as a proof-of-concept Houdini plugin. The goal was to add fine surface waves to an existing liquid simulation without rerunning the base simulation.
The method comes from Surface Turbulence for Particle-Based Liquid Simulations by Mercier et al. A dense point cloud follows the moving liquid surface and carries a separate wave simulation, adding detail at scales the base simulation does not resolve.
My role was to turn the method into a working Houdini implementation. I built the plugin in C++ using the Houdini Development Kit (HDK), with OpenCL acceleration for the computationally intensive stages. The workflow separates surface initialization, tracking and wave simulation, so the tracked surface can be cached and reused while adjusting the waves.
The full video on YouTube explains the method and its mathematics, with a demonstration of the tool and benchmarks.
Huge thanks to Goran Pavles and Stormborn Studios for making the project possible and letting me share the work.