Physarum Lab
Procedurally generated tomato plants built with L-systems
Overview
The physarum lab is a study of the physarum slime mold. It was inspired by Entagma’s physarum writeup and Sage Jenson’s physarum simulations.
Image Gallery
This scene/shot was based off of footage from this video from Journey to the Microcosmos.
Breakdown
Initially I was approaching the physarum as a particle simulation. The methods explored by Entagma and Jenson above described this approach, which simulates the behavior of slime mold. I think they’re visually the best methods, and of course the most accurate. That method is implemented below. However, the problem was that the particle simulation didn’t translate into geometry very well, and my goal was to use the slime mold as a part of an environment, not VFX. This led me to pursue the second method of cheap growth using pathfinding.
Original simulation
Individual particles move each frame, sense the particles around them, and move toward the highest density “cell” of particles on a grid. The visual effect of this is more compelling than the simple growth, but I wasn’t able to translate it to 3D geometry very well or achieve the same effect with more complex geometry.
Simple Growth
The simple pathfinding method I put together instead takes the intitial geometry, subdivides it into a voronoi cell pattern, and pathfinds from one or more points to outer goal points. Tracing these lines creates the illusion of growth.
This method was much more ready to use for 3D. Creating the geometry of the lines is simple enough given that the traced lines are curves, not particles, and can be swept along.
Particle flow
Part of the physarum effect that I was studying had internal particles within the lines of the slime mold. Once again, Entagma had a guide on vector field-based particle flow. This method samples the geometry as a volume, and creates a vector field based on the tangent of the path at each point in the field. The particles then use this vector while going through the tubes.
Shader
The shader for the physarum lines when seen up close was developed inside houdini’s shader network.