zapra – techniques

Looking through the p5 example library, I was fascinated by the soft body demo and its use of simple equations and curveTightness to create something organic and seemingly alive.

I got very excited about the experience library, since it's always frustrated me that something as seemingly simple as clicking a triangle is more complicated and math-heavy than I would like it to be.

On Glitch, I'd like to explore the magenta block further after seeing this lovely machine-learning sketchpad made with magenta that tries to finish your drawings for you.

zapra – Body

view code

Initial sketches for hair changing, marionettes, creepy face masks.

My original idea was to make a whole set of masks, but I decided to scale it back and just focus with one. I was partially inspired by Picasso portraits, and a local American artist, Richard Merkin, who's art is hanging in my parent's dining room. I had a lot of fun playing around with the face tracker and exploring how I could use motion and facial expressions as visual triggers for different events. I did run into some problems with determining the ratios for the face when registering blinks or smiles, since the values change just by tilting the head or moving closer to the camera. From testing the mask with other people, I've realized that the ratios are mostly tuned to my own proportions. I think if I could spend more time with this, I'd find a more consistent way of registering these expressions and also explore rotation further.

Another mask idea I explored while playing around with the face tracker.

Additional sketches and some skateboarding cats.

zapra – clock


View code

I think I really might have focused on the wrong aspect of this project. After exploring a handful of ideas, I remembered the discussion about "perceived" time and remembered a clock drawing test that's common in medical screenings. The exercise is often used to visualize cognitive impairments such as aphasia, left neglect, etc. While the basis of my idea was to animate these drawings by having the numbers and hands move irregularly in a non-circular pattern, I got sick yesterday and now have a much less clean and much less functioning version of everything I had planned. I think I spent too much time trying to get the visual elements to look right, and I didn't dedicate enough time to the actual, functioning timekeeping. I feel frustrated that I spent so long trying to get the numbers to look right that I don't I actually achieved my concept.

clock drawing test


zapra – Looking Outwards-04


Anthropodino (2009), Ernesto Neto

Image result for anthropodino ernesto neto gif

Ernesto Neto is a Brazilian artist who plays with audience's sense of space, texture, and smell. Anthropodino is one of his many interactive installations employing textiles, gravity, and amorphous forms. In addition to encouraging people to explore and play in the space, Neto fills his mesh sculptures with spices, ball bearings, and other unusual substances to engage visitor's senses in unconventional ways. In an interview with WNYC, Neto expresses, "I wanted to touch you with the smell." I admire Neto's work since I believe he calls attention to some of the untapped forces we can play with and explore as artists. While a vast majority of art is expressed through visuals or audio, it is often one or two dimensional and becomes predictable in the way we are expected to interact with it. By calling attention to aromas, tastes, intimate textures, and other neglected senses, we can challenge the boundaries of interaction.


zapra – reading03

It's difficult to gage where I stand along this spectrum of first and last word art because the need for both is so evident. If we only have first word art, we will never move out of the "novel" stage, and nothing will be built upon, improved, or analyzed in depth. It would be similar to a conversation in which every person is simply waiting for their turn to speak, not absorbing or reflecting on the thoughts of those surrounding them. On the other hand, having only last word art would be as equally implausible; if we turn our backs on what is new and novel, we can only work to improve the limited scope of what already exists. As for technology and culture, I believe that while technology can incite quicker change, culture will always be what determines its success. Throughout history, we seem to gage major shifts in culture based on technological advancements: the Industrial Revolution, internet, smartphones, etc. However, at the core of all these major shifts lie societal impulses that seem to be ingrained in our human nature--the need for information, speed, convenience, and "more" in general. All in all, as technology continues to advance, our essence stays the same.

zapra – AnimatedLoop

View code

Circular easing function for tongue
Golan's frame exporter


After exploring some ideas for walking cycles, bubbling stew, bees and other critters, I think I subconsciously drew inspiration for this frog from these cinnamon toast crunch characters, who have the dumbest expressions and horrifically long tongues:

I knew I wanted him to flick his tongue and give the appearance of being alive, but the nuances of his breathing and eye movement developed as I started on p5 and played with the variables. When choosing the easing function, I flipped through the examples in p5.func until I found one with the elastic motion I was looking for ("circular in"). The rest of his body movement is based on sinusoidal curves, as I found it best to give the impression of heavy frog breath.

Debugging the flies (haha get it?). I created a function using butterfly curves to draw their paths (equation source in code).

I certainly learned a lot about nonlinear motion and designing programs that actually loop frames. Also, who would have thought that making the gif would be just as hard as the actual animation? I'm also learning more about mining the web for solutions rather than trying to come up with everything from scratch. I'm definitely getting more comfortable reading and understanding code that I want from existing programs, like extracting the easing function for the tongue movement. If I had more time, I wish I could've done more.  I had intended for a more complex background, and feel pity for the frog that he'll never actually catch any flies. For now, he'll just have to look on hungrily, dinner always just out of reach.


Zapra – LookingOutwards02

Mosaic Virus by Anna Ridler (2019)

Extrapolating on the "tulip fever" craze in 17th century Netherlands, Anna Ridler's installation,"Mosiac Virus," uses AI technology to develop stunning videos of synthetic tulips. In the real tulip industry, collectors value the flowers for uniqueness, viruses and mutations. Riddler highlights these prized features with her generated tulips; their unique mutations growing, blooming and adapting to the rise and fall of the bitcoin market. The project began with her searching for, photographing, and categorizing ten thousand tulips by hand, which became its own installation seen here. She then fed a generative adversarial network (GAN) these ten thousand photographs as a training set for her own creations. I find this supplementary installation equally, or perhaps even more, important than the project itself. When ownership of generative art is challenged, I question whether work generated with the photos or paintings of others can truly be considered theirs. With this training set however, Ridler creates wholy individual work that calls attention to the human labor that goes into creating generative, "autonomous" art. I feel that her work manages to capture the stunning nuances of a biological organism that organically encapsulates effective complexity.

Myriad (Tulips) by Anna Ridler (2019 ), the hand-photographed and categorized training set for Mosaic Virus




Zapra – Interruptions

View code

Observations / Assumptions:
  1. The image is a white square with black lines
  2. There are many short lines of the same size
  3. There are seemingly random gaps in the lines
  4. The lines form a matrix of rows and columns
  5. The lines are centered around a midpoint of equal distances apart
  6. Most lines are angled left or right, but have a slight proclivity towards the vertical
  7. There are often several gaps in the image of different sizes
  8. Some gaps extend or go over the edge of the grid
  9. There are about 60 lines in each row
  10. The space between each row is less than the length of the lines (if all lines were vertical, they would overlap about halfway)

Some of frustration I ran into with this project was based off an incorrect assumption I made about how the lines were drawn. I had assumed all the lines were spaced equally based on the top endpoint rather than middle. Once I realized this, I struggled to find an effective way to center all the points around these midpoints (but once I did, I audibly yelled "YES!" alone in my apartment and gave myself a high five). I haven't done much in-depth coding since last year, so as I've progressed with this assignment I'm starting to remember more and more. I think ideally I could still tidy up my code, but I at least feel satisfied with the end result.

Some previous versions:

Zapra – Reading02

Related image

1a. A field of fireflies on a hazy summer night demonstrates a mesmerizing display of effective complexity. While it may appear random and chaotic to the human eye, fireflies exhibit flash patterns unique to their species to communicate and identify one another. When many occupy a single area, I'd liken the complex beauty to that of a symphony orchestra.

Image result for fireflies gif

1b. Locality, code and morality: When it's a question of "which part" is the actual art, I believe that the code and method of display are both encompassed in the definition. I'd liken the creation of generative art to that of printmaking; as art that is built with the intention of iteration, the process of making the matrix as well as the copies are part of the final result. It is developed under the constraints of that medium, and thrives under those unique demands.

Zapra – lookingoutwards01

Limbo by Playdead, 2010
Gif source

As a lover of all things whimsical and uncanny, I'd describe discovering Limbo as my first experience being truly in awe of computational art. Developed by the small, Danish studio known as Playdead, it is just as much a work of art as it is a puzzle-based video game. Starting in a dark forest without evident controls or instructions, the game chronicles the terrifying challenges of a young boy as he travels through "the edge of hell." Unlike my favorite movies and books that could fall into the same genre, I'm in love with how Limbo uses code to tell a story and invites you to experience art through interaction. It feels far more intimate than animation; as you are tasked with saving this unfortunate protagonist, the creator invites you to explore and uncover what they've made for you. 

Starting as an independent project by Arnt Jensen in 2004, the game took 6 years to complete and expanded to a team of 16 by the time of its release. According to Wikipedia, much of Limbo's artistic direction drew from Jensen's personal experiences as a child and his admiration for the film noir genre. Martin Stig Andersen, an expert in "acousmatic music," compliments the exceptional art direction with an unearthly soundtrack comprised of computer-generated sounds. The game was created using Visual Basic and Visual Studio. Following Limbo's major success, Playdead expanded as a company and developed its second eerie horror game, Inside, in 2017 (as I patiently waited 3 years for its release).

Image result for limbo playdead
In one of the more chilling puzzles in the game, the boy must cross a pond without being killed by one of the many giant spiders.