For the second assignment students focused on creating a generative digital art piece use creative coding tools. Shown below are a sample of some of the students final pieces as an example of the types of work produced.
Simply Noise: How simplicity returns complexity
Ardavan Bidgoli
For this assignment I tried to play with the concept of Simplexity and explore how applying simple forces to basic geometries can result in visually complex and partially unexpected patterns. The initial idea was inspired by Sweeping Fractal Lines (Gries, 2012) project from RectangleWorld. To do so, I defined a series of points on circle and slide them over their containing radius. The amplitude of each point’s sliding was generated by a random noise to deform the circle from the original solid symmetry. By keeping the last couple of hundreds of deformed circles, I recorded a short memory of this transformation as fading lines on the canvas.
sorted__01
Ken Holstein
I was initially interested in the idea of visualizing the struggles of an algorithm that
is designed to work in a stationary environment, as it tries to achieve some task in a
non-stationary environment (we’ve all been there, right?). I thought video footage seemed like
a good (very simple) example of an environment that is non-stationary, in a sense, from the
perspective of a sorting algorithm that can only take a few sorting steps per frame:
The matrix you are tasked with sorting (an image) is changing over time. But there’s still
hope for momentary victories, because videos tend to be somewhat visually stable over
time (e.g., as compared with random noise). So, occasionally, during a slow scene of a
movie for example, maybe you can make some temporary progress towards the goal (a
fully sorted image).
In addition, I was generally interested in the idea of an algorithm trying to re-organize highly
structured and meaningful (to humans) data into a linear pattern based on just one or two
‘surface features’.
Algorithmic Generative MIDI
Anirudh Mani
In this project, I was just hoping to make a simple MIDI generator based on any famous
mathematical function or series. MIDI stands for Musical Interface Digital Interface, which is a
technical standard for various music related devices to interact with each other. One can think of it
as the blueprint of the music it represents. One can represent a note (for example - C1) and its
velocity (for example - 120), and when it is pressed and unpressed. There are various kinds of
messages one can send using MIDI (for example, NoteOn or NoteOff, ChannelChange, etc).
Generative Art with Processing and p5.js
Tait Wayland
At first I used vanilla Processing. As an experiment I sought to reproduce one of my pieces. It turned out to not be difficult to produce a piece similar to this. I simply learned how to upload a 3d model to Processing and then looked into reducing a model to its vector points. I then drew lines between the points, and also randomly sampled points and drew a line from that point to the center of the canvas. I did need to repose my models, and by this point I also favored P5 much more and decided I wanted to do something with the P5 flavor of Processing instead.
I generated a better model in P5 and realized by this point I wanted to create a new composition. I wanted to focus it on a floating human figure, so I posed a model and exported a .obj file. Doing work in P5 was much more efficient. I looked a bit at examples on OpenProcessing and found a project where I really liked the shading and lighting. So I downloaded the code and used that aspect of it in my scene. I ended up posing a central floating figure with about 40 randomly sized orbs floating around him. I also generated some extra light orbs and colors, and tweaked the intensity until I had something I liked.
Generative DeStijl
Yang Yang
This series of work is inspired by Piet Mondrian’s Composition paintings. Many other De Stijl
artists also created works that explore the composition of colors and geometries. I was curious
about why the artists choose to paint this composition but not the other. Was it purely because
they were more visually pleasing to human eyes? What is the rule of the harmony that the
artists pursued? Therefore I created this Generative De Stijl art series to explore what are the
possible compositions that the artist never picked and the difference between this works and the
ones that had been produced in the art history.
deliberation field
Pedro Veloso
deliberation field is a diagrammatic representation of information exchanges, such as dialogues, conflicts and discourses. It approaches the topic by representing the influence of the agents’ position (ideological and spatial) on the behavior of other agents and on the construction of the environment.
A circle (a) defines the boundary of the field. This circle is divided in n points (b) that are used to define which curves of the vector field are going to be visualized / integrated. Inside this field, points are generated along the time (c and e), representing different actors joining the deliberation. This points have real numbers as their charges, which corresponds to a certain ideological position. As the time passes, more points join the deliberation field, changing the shape of the curves (d, f and g).
The resulting artwork is a generative animation displaying the change of the deliberation field along the time. It starts with two agents and at certain interval, one more agent join the field. The initial setup (velocity, location, and charge) is defined randomly. The behavior of the agents (cohesion, separation, alignment, and staying inside the circle) changes with the development of the field.
Glitched Gloves
Lea Albaugh
What does it mean to glitch a textile? There are many examples of textiles with surface patterns
based on glitched pixel images, but while these are beautiful objects and interesting
from a fashion standpoint, they usually do not involve the underlying structure of textiles — they
might as well be printed on a poster, or a wall. In the domain of knitting, glitch can involve
dropped stitches, but there is a delicate balance between a knit object and a fully
incoherent tangle of yarn. This means that these "glitches" must often be either added minimally
or designed artisanally, which can undermine their intrigue as a mechanical process.
This is a project I've been meaning to do for some time, somewhat inspired by Golan Levin's
Augmented Hands project as well as by knitting machine code itself. Our knitting machine, a
Shima Seiki SWG "Wholegarment" machine, was originally designed for knitting gloves, and
the goal of glove knitting is intertwined with its mechanical and software design. Its
programming language, KnitPaint, really only supports two layers of nested loops as well as
macro expansion. While I did not implement this project directly in KnitPaint (among other
things, that language lacks support for randomness), the structure of the code is patterned after
the way factory knit jobs are designed.