Release

A world of lines

An algorithmic art project that creates a 3D scene consisting of thousands of lines that can be plotted

View project on fx(hash)

  • type: Algorithmic
  • editions: 320
  • chain: Tezos
  • code: JavaScript
© 2022 – 2024 Monokai, all rights reserved

The story of Release

More than anything she had wanted to show him where she had lived, where, at a specific time every year, endless fields sent a new cycle of pods on their way.

She preferred to experience these moments alone, imagining the spectacle was being performed just for her. The whole act carried a promise of new beginnings, of paths yet to be taken.

She wasn’t really part of any of this, but she too had the coordinates to her own life programmed into her genes.

Any decision would be true now, any path free.

A chorus of explosions sounded as the field burst open.

Algorithmic 3D scene

Release combines two different main algorithms: signed distance functionsIn a ray tracer, you need to calculate when a ray of light hits an object. SDF’s describe the object’s distance to a ray. and flow fields. A signed distance function is a mathematical representation of a 3D object in a ray tracer. Multiple of these functions are then used to create a complete 3D scene. As such, you can completely construct a virtual world from code via one big aggregate function.

The flow field is used to construct threads on top of the (invisible) 3D scene. This is done by taking the SDF functions into account, so it follows the inclinations of the shapes.

Variations

As the scene is generated by code, it’s possible to create slight variations by introducing controlled randomness. The same scene can be rendered with different parameters, resulting in different colors, shapes, and compositions.

Randomness is a powerful tool. You have to be careful with it though, as it’s a fine balance between chaos and order. In this scene randomness is used for lots of things, including the shape of the seeds, the camera position, and the lighting.

Plotting the work

Release has a secondary mode where the output is rendered in SVG format. This allows the work to be plotted with a pen plotter. The SVG format is a vector format, which means that the output can be scaled to any size without loss of quality.