PICULEA: a furtunate bug

(From twitter thread)
PICULEA is a collection of generative art that is/will be released on FxHash Tuesday August 23, 2022 at 19:00 CET.

This project is actually the result of a bug, while trying to achieve something else. It was developed in an (unintended) speedrun of a few days.

On August 13, 2022, a group of Dutch generative artists came together in Utrecht. I felt like a rookie in their presence, but we had a really nice and inspiring afternoon together. It triggered me to start something new.

I have a laser-cutting business (making puzzles @kaboomlaser) and I had been playing with one of @piterpasma‘s design. His design outputs SVG, which is basically the file format the lasercutter loves. And I tasked myself to create a tool that outputs SVG files as well.

My goal was to create a library that easily generates SVG and combine that with a 2D noise field to create line drawings. I already had used a Simplex algorithm for that in the shader code for my on-going planet sculpting project.
Just needed to convert that to jacascript.

Well, the conversion didn’t work as planned and I needed something to debug the code, to view the noise field I had generated in Javascript. My SVG tool was working so I used that to draw circles on a grid, coloring them with the value of the noise field: easy peasy.

This debug view was a useful tool and I was able to fix the bugs in my code. I started playing with some of the parameters of the debug field, such as radii of the circles. And I liked what happened.

I started changing not only the radii, but also the shapes: the circles are cut up in segments and the radius of each segment changes. The rate of this change, but also the radius itself can depend on the underlying noise field. And that is the essence of the collection.

There is still a bug in the code somewhere: some of the noise fields show a strong pattern. But this is ok, it adds a nice variation to the collection.

So that’s the story behind this collection. It is something I encountered while trying to achieve something else. If my noise code would have been working right away, all of this wouldn’t exist.

Oh, and the original idea: creating line drawings with a noise field? I got that working too. So that will be a future project.