Furkan Doğan shared a real-time ivy simulation built in Unreal Engine using Niagara, running entirely on the GPU with branching, growth, and procedural animation.
Furkan Doğan shared an
ivy simulation running inside Unreal Engine, where the vines grow, branch, and spread across surfaces in
real time.
After reaching out, he shared a full breakdown of how this VFX was built, along with progress clips showing how it evolved into the final result.
Furkan decided to split the process into a few steps, to explain it better.
The first step was simple, the system spawns particles and snaps them to nearby surfaces using Global Signed Distance Fields.
From there, the particles begin to build a path. Instead of just disappearing, they stay in place, so over time they leave a visible trail behind them.
That trail becomes the base for the vines. By switching the renderer to a ribbon setup, the particles connect into a continuous shape, starting to resemble a growing strand.
Once that base was working, the next step was branching.
Ivy behaves a bit like an L-System, constantly splitting into new branches. That kind of logic is easy to do on CPU with recursion, but on GPU it doesn’t work the same way.
Instead of checking each strand and deciding when to branch, the system assumes that every strand could branch. It spawns enough threads for that case, then ignores the ones that shouldn’t exist.
After that, movement comes in. At this point the vines were growing, but in straight lines, which didn’t look very natural.
To fix that, Furkan added a noise offset so the strands shift slightly as they grow. This breaks the straight line pattern and makes the ivy feel more like it would in real life.
From here, the final steps are mostly visual and polish. Furkan adds a material so the vines glow slightly as they appear, and flowers show up along the strands as they grow.
The flowers are static meshes and they are animated using world position offset in the material. Here’s a quick breakdown to help explain the whole process better:
You can see more of Furkan’s work in the link below.
Interested in learning more?
If you are interested in shaders and the math behind game visuals, the
Shaders Bible Collection brings together
six books covering shader programming, procedural shapes, and core math concepts in Unity and Godot.
This is for developers, students, and creatives who want a better understanding of shaders, strengthen their fundamentals, and improve the visual quality of their projects.