Back

Procedural Flower Tool

February 2021

project houdini vex python

I have always wanted to create an art-directable procedural tool in Houdini, and had been fascinated by naturally occurring fractal structures such as flowers! In this project, I created a procedural tool that generates a wide variety of flowers and gives the user the power to tweak anything as small as the amount of bend on the left side of a petal to something as broad as the curve input for the stem of the flower itself.

Inspiration

I really wanted to draw my inspiration from life, so I studied the structure and blooming patterns of many different types of flowers.

Golden Ratio Petal Structure

Here is a quick summary of the algorithm used to generate the spiral of petals: For every petal in the flower, I want to calculate the petal’s position by finding its polar coordinates (radius and angle). The radius is proportional to the number of petals, so that the spiral continues to grow as we increase the petals. The golden angle is added to the angle for every petal, driving the spiral’s curve.

Golden ratio spiral points diagram

Flower and Petal Parameters

Parameters are categorized into flower parameters, for changes to the overall shape of the flower, and petal parameters, for changes to individual petals. I wanted to focus on improving the usability of the tool and fine tuning the parameters of the petal subnetwork to maximize flower variance and allow artistic specificity.

After studying many different types of flowers, it became apparent that there is a relationship between the petal’s distance from the center and the petal’s size and bend amount. For this reason, I thought it would be best to have the petal size and bend amount be ramp parameters based on the petal’s distance from the center.

Final Renders

Here are just a couple examples of applications of my procedural flower tool:

Procedural flower render Procedural rose render