Research Project

For this research project I chose to look into generative software, that is code that is created to create. I chose to focus specifically on the artist Matthias Dörfelt, who’s work caught my attention due to its organic form. What I mean by that is that his work doesn’t look like what I’d imagine could come from a computer. It is imperfect, with a cohesiveness that doesn’t come at the price of hard geometric shapes or perfect lines, as are often associated with computers. His work transcends 0’s and 1’s and somehow his hand is so present through each piece of his collection, despite the fact that large amounts of his work are randomly generated with code. The biography of his website affirms this dichotomy between the perfection/rigidity of computers and the organic-nature/inconsistency of humanity; “In his works he often trades control in favor of surprise because he strongly believes in computation as an expressive, playful and humorous tool. Matthias will continue to explore these aspects by infusing technology with flaws, naivety and weirdness.” In order to make something perfect, imperfect, it must be “infused with flaws”.

It is a testament to his prowess as an artist that he is able to create such natural and human-like work from a computer that can only accept very specific commands; a tool that must be told exactly what to do with no room for error. I suppose a great test of fluency within a medium is when an artist is able to create beyond the apparent limitations of a medium, like a painting that appears to be three dimensional or a photograph that really creates a sense of scene, to the point where you feel you are in the photograph.

One thing I found very interesting is that although Dörfelt’s process is entirely digital, all of his artwork that is available for purchase is physical. Similar to a painter or photographer, he sells prints of his work online. Not only that, but since the work is created with elements of randomness, each piece is unique and there cannot be another like it. So when someone buys one of his prints, they are buying something semi-computer, semi-human, but fully original.

Dörfelt isn’t the only artist creating art with code. In my research I came across a project called Written Images, which received over 70 contributions from different media artists and developers. The project compiled 42 of the most creative generative software submissions, and essentially provided a “print-on-demand” service, where a book was created with artwork from these programs. This means that each book is unique, and that you are buying the only copy of the book that you receive. In the art world, rarity is proportional to value; the rarer something is, the more valuable it is to have it. This is why digital artists create limited amounts of their artwork; if it is available everywhere it’s value decreases significantly. Studying Dörfelt has opened my mind to the possibilities of creative coding, beyond just shapes and lines. This really seems like an entirely new avenue of expression, in which the computer is co-creator with the artist.

You can find more of Matthias Dörfelt’s work on his website. There are links to his social media profiles on the website.

You can also check out the written images project here.

If you’re interested in buying some of his work, you can do so here.

Week 2 Interaction (Ahmed & Allen)

For this interaction sketch, Ahmed and I used the mouse and keyboard as a way to control various elements on the screen. Most of the interaction comes from the mouse – moving the mouse to certain locations changes the rotation speed of a square in the middle. When the mouse is clicked, randomly-sized ellipses of random colors appear at the clicked location; the square will also reset and change colors. When a key is pressed, the background changes to a shade of grey.

One part of the project that was successful was the square. We used the translate and rotate as well as mouseX and mouseY functions to make it move. We were also able to change the colors of the objects pretty easily by putting random inside the fill function all in the mousePressed event. However, we did run into a couple of problems. One of them was the translate function. When we used it to shift the canvas to the middle so the square could rotate about its own axis, the location of the ellipses became jumbled. This happened when we tried to make them randomly pop up around the screen, but they ended up going off the screen and being created in random locations. Another problem was going from processing to the openprocessing website. We originally had the project where when the mouse was clicked, ellipses would pop up in a circle around the square. However, this didn’t happen when pasted in the website, so we had to rewrite the code so ellipses would pop up wherever the mouse was clicked. Overall, the project was pretty successful, as we utilized many concepts from class and were able to complete the assignment.

https://www.openprocessing.org/sketch/505065

Self Portrait — Day at the Beach!

The most challenging thing about this assignment was learning to think in terms of basic shapes. When I was planning the portrait, I had to think of the body in terms of its most basic components. I tried to focus on rectangles and ellipses, as those were the easiest to code. The head is almost all made of circles, with a few lines. I thought the clouds would be very difficult, but they actually didn’t take me very long. They were the last things I did, and so I’d gotten a hang of how to use the program. I made a series of small ellipses with no strokes and combined them into clouds. The actual hardest part of the project was figuring out the arc.

The one thing I couldn’t master was bangs. I have kind of weird, swoopy bangs, and I could not figure out how to code them. I tried using an arc, but I didn’t know how to rotate it. Nor did I know how to put a stroke only on one part of the arc.

Ultimately, I’m happy with how it turned out!

You can find it here: https://www.openprocessing.org/sketch/504627

Self-Portrait

This was very challenging to transition from drawing an image to making a model in processing. The most challenging portion is trying to make curve lines. The easiest way to do that seems to be, is using arc method which worked great for the mouth but not so much for the nose and ears. I wanted the nose and ears to rotate in specific ways but no matter what I do to the variables in arc they did not rotate the way I wanted them to. I was also surprised by how easy changing the colors as I thought it would be much more difficult but it was easy to get adjusted to it.

Link to processing site: openprocessing.org/sketch/504339

Week 2

Today we’ll be doing the following

  • Homework review/check-in. What was difficult, what worked, where were your pain points?
  • Reading discussion (if time)
  • Research project discussion & date picking
  • setup & draw revisited – flow, events
  • mouseX & mouseY, pmouseX, pMouseY
  • width/height
  • println
  • variables & types : int, float, boolean, char, color
  • easing
  • mousePressed
  • keyPressed
  • random
  • map
  • translate
  • bezier fuckery

Code from today’s class

Self-Portrait

 

I previously worked with the processing program in my Data Structures class for the lab but it was nothing like the experience I had making the self-portrait. I used it in python and we didn’t really go into the code that made up the draw function. When working on the assignment I felt more under control and I was able to turn my code into art. Usually, when we think of code we envision work being done with engineering software such as blockchain or artificial intelligence. It was a good feeling to know that code can also be used as a form of art. I still need to work on getting my ideas out faster through the code but the assignment was quite fun. The colorway for myself portrait was inspired by hip-hop artist Tyler the Creator.

https://www.openprocessing.org/sketch/503878


Self-Portrait

While creating this self-portrait, I found it difficult to ballpark where the points would end up on the grid, but I began to get the hang of it as I continued drawing shapes. I’m not sure how you would tilt a shape (ex. to make arms or hair), but enjoyed experimenting with different transformations I could make to the shapes. I wanted to keep it feeling as organic as possible, which is why I avoided hard corners/shapes like polygons and straight lines. I struggled a lot figuring out how to use bezier curves. Unlike a circle where you can create it and then just move the center point to move the entire shape, when you move one coordinate on a bezier curve it changes the entire shape of the curve and the shape you had is distorted. It took me a second to figure out how to turn the arc upside down to create the body, but after refreshing myself on the unit circle it made more sense. I was pleasantly surprised to find that to create the irises of the eyes, I could copy the code from the eyes and just change them from ellipsi to circles. They ended up looking exactly how I hoped for them to. For some reason it isn’t allowing me to upload my sketch. The image upload keeps failing.

Link to sketch: https://www.openprocessing.org/sketch/503765

Self Portrait

This was my first coding experience, so I tried not to make the self portrait too demanding in order to allow me to practice the basics without getting too stressed. Regardless, I still found the program to be extremely challenging at first, particularly when it came to solving creative problems like drawing hair and aligning shapes so the proportions come out accurately. Initially I had tried to draw the hair with arc functions but ultimately found it too difficult and decided to try straight line functions for now. Hoping to practice more and improve on using Processing, particularly studying functions and familiarising myself with the graphing system so that placing shapes becomes more intuitive.

Link to sketch: https://www.openprocessing.org/sketch/504052

 

 

Self Portrait

The transition from a hand-drawn sketch to a Processing sketch was more difficult than what I imagined. Since Processing doesn’t provide coordinate grid on the sketch, it was hard to think in coordinates and approximate where a center of an arc has to be. Speaking of arc, it was near impossible for me to successfully create arcs. It took me almost 30 mins to figure out semi-ellipse arc for the mouth. I still cannot freely create arcs that I want. I also wanted to create new shapes, but for the shape function, Processing had trouble defining the variable s. As for rectangles and lines, they were easy to position once I escaped the blank canvas, and was able to position elements in relation to the others.

https://www.openprocessing.org/sketch/503888

Self-Portrait

Its been over a year since I’ve had to use processing.  I used it in my data structures lab to implement visual representations and methods of the data structures we discussed. it was very stressful since we were actually graded for it. But this time it was a little bit more relaxing, especially because this is not data structures. I was never a good sketcher, and I never will be. However, coding my face actually seemed a lot more natural to me since i just have to tell the computer what to draw. I don’t really have good grasp of what my face looks like. So I just used my bitmogji as reference. Perhaps, I will be able to add on to this sketch as the semester continues.