ITP Notebook [2020 - 2022]

L-Systems Study

November 13, 2020

Code of Music

This week Pippa and I experimented with us L-Systems to control sound and visuals.

We started with a tutorial by necessary-disorder and created a visualization based on two spinning circles and the transition between the them — which form a sort of coil. The L-System controls how much that coil is wound, tightening and loosening based on the current generation of instructions.

We used the Sierpinski triangle as our starting rules but modified it slightly to produce a more balanced effect. In our implementation F means “tighten”, G means “loosen”, and - is a rest (no action). The current letter is incremented every 30 frames.

In our original sketch added sound by modulating an oscillators pitch in relation to the tightness of the coil — similar to how one tunes a stringed instrument.

In a later iteration we used two GrainPlayers playing a recorded sample. In addition to changing the pitch, the tightness of coil also affects how quickly the sample is looped. Each circle also had manual slider inputs which control the volume and initial pitch of the sample, represented as the circle’s radius and rotational speed, respectively.