Art, design & a little curiosity
Creative coding ↗

Recursive art without getting lost in recursion

Make a branching drawing from a stopping rule, a scale reduction, and a repeated transformation, while keeping the construction small enough to inspect by hand.

An original type poster study exploring recursive art tutorial.
Type poster / Original digital study

A branch with a stopping promise

Recursion becomes understandable when each branch is a smaller instance of the same job. A branch draws a segment, moves to its tip, and asks for two smaller branches. The essential creative choices are the angle, the reduction in length, and the moment the process stops.

Draw two children from each branch

Begin with a trunk and two children drawn explicitly. Only then put the branch operation into a function. Save the drawing transformation before turning toward a child, then restore it afterward. Stop when depth reaches zero or the proposed segment becomes too short to matter.

Set up the first proof around branching depth, using a value you can recognize in the finished result. Break the construction into a single working unit and a repeated or extended form. Verify the unit on its own first. Only multiply it after its boundaries, movement, and proportions match the proposed rule. A useful acceptance check is whether the stopping condition works and the branching structure remains legible. Judge that at the intended viewing size or working distance, where tiny construction mistakes and exaggerated effects can have very different consequences.

Inspect the stopping rule and restored origin

A missing stopping condition can freeze a sketch. A missing restored transformation sends later branches wandering from the wrong origin. Test with depth two and display the branch tips. You should be able to account for every segment without interpreting a dense final tree.

Before rebuilding everything, compare the current branching depth setting with the last understandable version. Temporarily show construction points and intermediate values. Reduce repeated elements to a handful and pause anything that changes over time.

Introduce unequal branch angles

Keep the branch count fixed and compare symmetrical angles with deliberately uneven ones. Next reduce one child's length slightly. Observe how a small local asymmetry becomes a large global character when repeated through the structure.

Reserve one trial each for 2, 4, and 6 levels. Place the results together, or replay them in a fixed order when movement matters. Look for the smallest change that alters the reading of the work. If every trial produces a different problem, reduce the distance between the settings and investigate the transition instead of choosing an extreme.

Count the work before increasing depth

With two children per branch, each extra level can roughly double the number of terminal branches. Draw depth zero as a single segment and sketch the next two levels on paper. This makes the growth in work visible without relying on a crowded rendering. If the tree becomes dense, first reduce depth or branch length; shrinking stroke width alone can conceal the symptom while preserving needless geometry.

A worked example

A four-level coral fan

Draw a coral fan with four levels, a short trunk, and two unequal branch angles. Put tiny discs at terminal tips only. Changing the terminal mark creates a new reading without changing the recursive skeleton, which helps separate the drawing system from its decorative surface.

References & further reading

Examples and exercises in this guide are original teaching scenarios.

Keep following the thread.

More creative coding ↗