Monthly Archives: December 2016

Conference Post-Mortem: Iterative Painting

screen-shot-2016-12-16-at-7-31-21-pm   screen-shot-2016-12-16-at-7-31-08-pm

RGB Grain

Ultimately, I have produced five digital, animated, iterative paintings. This was certainly my intention. Nothing really went wrong. However there are some aspects incorporated into my five pieces that surprised me and there are some aspects that, I think, could have been improved and that I hope to improve.

Initially, I aimed to make five pieces all based off of my original colorbar class, which iterates pixel-high rectangles of variable color along the height of a five-pixel-wide bar that can be moved across the screen, essentially “painting” itself if the background isn’t called. Moving forward with the class, I simply wanted to incorporate the new skills we learned since the early days of for loops. Not so simple, actually. I didn’t have much difficulty understanding individual concepts over the course of the semester, but in attempting to combine them I found that creative use of these skills together is the real challenge and most definitely the thing I have to play with if I really want creative control over my ideas. The final pieces were much more reliant on variations and additions to the original for loop than I wished. However a couple of the pieces I think were very successful in exploring the possibilities of layering simple loops because of this more reduced framework.

RGB Grain (above) is my favorite painting, and it was also the first I coded. It relies on three different colorbars and a basic interactive function to produce semi-predictable color and texture effects and animation. One colorbar moves left, one moves right, and one acts as a shifting color field. The latter is responsible for the more dramatic, intermittent color/texture shifts, as it takes longer to screenwrap and, once it does, it iterates a great number of thin colored lines across the entire canvas at once. A mouse-press function resets this colorbar with a semi-random, red-leaning color-value, and this allows the viewer of the painting to disrupt its semi-predictable loop and introduce more variation, color and texture-wise, into the piece. I titled it RGB Grain because the way the colorbars “ripple” across each other suggests there is a with and against the grain to each of them.

screen-shot-2016-12-16-at-7-31-48-pm   screen-shot-2016-12-16-at-7-33-32-pm

Gross Picnic Blanket and Skywiper

My other pieces tended to involve these three more consistently colored color bars than the more variant ones of Cut Canvas and Heat Scan. My experiments were more with composition, rhythm, shape, and opacity. The biggest challenge was making the pieces appear organic and smooth in their changes. I don’t think I was entirely successful in doing this across all five. Most notably, Flared was a challenge. I attempted to use the colorbar from Cut Canvas to make a piece along the lines of RGB Grain. Though I think the dynamic, lively quality of the colors and shapes is interesting, the piece doesn’t vary and evolve as much as it should. The same goes, I think, for Screenbound Ectoplasm Wipe. On the note of that piece, though, I did uncover a couple avenues I would like to explore further in the future through my failures. For Screenbound, I found it interesting how using a noise field of simple shapes below a semi-transparent color bar can produce a textured “trail” as the bar wipes across canvas. Using noise and transparency to create texture is probably the next thing I want to explore in Processing.

screen-shot-2016-12-16-at-7-32-44-pm   screen-shot-2016-12-16-at-7-35-20-pm

Flared and Screenbound Ectoplasm Wipe

I do wish I had more time to work on most of these. I like to save multiple iterations of a piece as I work on it and discover new avenues. I can make “nice” looking things quickly, but I am ambitious with my ideas and I like to follow through with good execution. Though it’s very easy to get into an improvisatory dialogue with Processing and to get interesting, pretty results in this way, I think having a strong initial idea is very important. Otherwise you can just keep working on one file and it can keep evolving into different things. It’s important to have an idea to work towards. That’s not to say, though, that experimentation in Processing is bad and useless. One of the great things about it is how easy it makes experimentation.

Lastly, overall Processing pushed me to work in a different way. I don’t usually think too much about color, texture, etc. in the production of my work in other media. I tend to be more of a conceptual artist who, nonetheless, likes to have sensual qualities in his work. Processing brought me back to basics in a way. I found out that I really lean towards the color blue. It taught me that good work can come from simple use of specific tools, that I don’t always need conceptual justification for making things. In the past few years I have really felt that digital art is very important and will become increasingly so. Maybe the conceptual tendency of my work can simply be bound up in the simple use of a particular tool that I have reason to believe is important. Instead of coming up with conceptual justifications for my use of a particular medium, just let the use of the medium justify itself.


Conference Post Mortem:: Wave Clocks

The final collection of wave clocks I finished with for my conference work were a much more polished portfolio than I had started out with. In the beginning, I had five sketches, each representing five different themes. In the end I had cut down my collection to four sketches, each still with a separate theme. The finished sketches were also better versions of themselves given that they were more visually coherent. The idea behind this conference project was to create several themed wave clocks that successfully articulated the emotion behind their respective names through color and presentation. As finished pieces, I feel confident that each sketch does exhibit the nature of its real world counterpart.


A still from Pineapple.

A still from Pineapple.

The first sketch I worked on was Pineapple. Given an interesting swatch of browns, greens, and yellows found on Adobe Kuler, I felt inspired to create a wave clock around the tropical fruit. From the start I knew I wanted to use an array to create a background pattern. To me this would reflect the pineapples patterned outer skin. With no other animated components other than the three wave clocks in center, the sketch was very simple, and there wasn’t much to tweak.

A photo of pineapple skin courtesy of Angelina Hills.



A still from Pineapple.

Saltwater was also somewhat straightforward. Already the wave clock motion was fluid so I wanted something else to compliment that motion in the background. I chose to have four different semicircles ebb inwards from the four corners towards the waveclock, simulating waves. With a great combination of rich blues, the sketch in the end was very smooth and peaceful, reflecting a current-like motion.


A still from Sarah.

The color palette for Sarah came from the fact that I had originally searched for Sarah Lawrence in Adobe Kuler, hoping that some art student had uploaded a color combination in light of their school spirit. However, nothing for Sarah Lawrence came up. Instead a vibrant palette for Sarah showed, with some beautiful reds and so I opted for that instead. Like Pineapple, nothing changed much since the first iterations over the course of me tweaking these sketches. The randomly generated lines from the four corners of the sketch mirror the components of Saltwater, but give a different feel. Rather than a pushing motion towards the center, the layered lines illuminates the borders drawing out the center of the piece which is a medley of red variants.


A still from Spider.

A still from Spider.

Spider was initially a sketch called Greyscale, and I feel as if I’ve cut a corner by renaming the whole sketch to reflect its visual components. Upon finding that static polygons did not fit with the whole composition of a wave clock, I used a circle class to create a number of different animated circles that bounced within the borders of the sketch frame. The title ‘Spider’ seemed much more appropriate given the arachnid like motion at the center of the frail white lines that cover the sketch. The most extreme of all my sketches, Spider’s background components actually challenge the fluidity of the center piece by criss crossing the screen with layers of white. There is an actual interaction with both the background and the centerpiece when the rest of my sketches treat both as entirely separate entities. The grey wave clocks in the center actually look entangled in the white web created by the roving spheres.

In the end, I chose to remove the sketch Moth from my compilation. What I wanted to achieve with moth did not fit the central theme of my project and so I left it out. Other than that, there were no other big upsets with the whole project. Every sketch successfully presented a combination of three wave clocks as the centerpiece with background components that complimented the wave clock motion and aesthetic. There was not really any particular final image I had in mind for any of these sketches. Despite the process of going through Adobe Kuler and finding themes for the sketches based on intriguing color palettes, the rest of my method was made up on the spot. I went with my intuition about what I wanted each sketch to have and worked with trial and error. An array for Pineapple, classes for Spider, the random function for Sarah, etc… Each sketch incorporated a different coding lesson we learned this semester. I don’t think it’s fair to say anything went wrong, because in the spirit of generative art, any outcome was accepted. In comparison to analogue installations, working with Processing allows a lot of room for error, and so with no specific end goal in mind, there was no positive or negative way to critically think about mistakes.  

Conference Project Post-Mortem: An American Life

For my conference project I created a series of movies that explored my placement in an American context and the ways in which I could use Processing and generative art to challenge or alter the original narrative of the photograph.

I began by finding photographs of American families in Ithaca. I then photoshopped myself into the images and split them into .jpg and .png files with some transparent portions so that I would be able to code in-between the layers.

The code itself was rendered in pure red to emulate the aesthetic of Barbara Kruger’s work. Many of the aesthetic techniques used were also reminiscent of John Baldessari’s dot series, where the graphic obstructions not only created visual tension, but also added a psychological distance between the viewer and the subjects of the photographs.

When I first began the project, all I knew is that I wanted to use photographs so I would have some tension between the coded graphics and the photographic image. However, I was at a loss for what photographs to use, and the approach I wanted to take. For a while I was browsing through old photos that I had taken. There was no real system, I was just looking for ones that caught my eye. Because there was a lack of purpose, I found it hard to make anything really interesting.


The idea for this slightly more political approach to the project came to me while I was in a thrift store, browsing through various old knick-knacks that, to me, were strongly representative of a specific American narrative. This was just a few weeks after the disheartening election results, and I was questioning my place and future in this country. I had used old found photographs for a previous project whilst I was studying in Berlin, and I knew the existing power and narrative in their composition would provide a fruitful grounding for my project.

Funnily enough, it was the pieces that I hadn’t previously sketched and planned for that turned out to be some of my favorites. Particularly, No.4 and No.5 in my series. I think when I started planning them in my sketchbook first, I was too focused on how to control the code, rather than how to create a system in which the generative nature of my work could create an interesting effect itself.

I also at one point became too reliant on Baldessari’s visual techniques. In No.1, I struggled to manipulate the spirals so that they wouldn’t just end up forming red dots on the faces in the photo, as it would be too similar to the dot series. In the end, I created a piece that changed very incrementally over time, and I think the difference before and after is quite striking. screen-shot-2016-12-14-at-2-49-11-pm screen-shot-2016-12-14-at-2-49-33-pm screen-shot-2016-12-14-at-2-50-10-pm

This change over time was definitely something I wanted to incorporate into my sketches, to make the photographs more dynamic and so that I could take full advantage of the properties of generative art. I was surprised to find that the vertex drawings I did, and changing them incrementally over time, wasn’t as hard as I thought it would be.


For No.2, I assigned variables to each vertex point of each shape, and added a noise incrementation so that they seemed to be expanding and growing in a somewhat organic fashion.

In every sketch, the axes that crossed particular portions of the photograph were very important. Mostly, I aligned the sketches to an axis that crossed over the eyes of the subjects. Though I wanted to differentiate myself from Baldessari, I also recognized that distracting and obstructing the face often had the most jarring effect on the viewer.

I also used loops in most, if not all, of my sketches. The allowed me to create these graphic accumulations onto of the images.

Because I was pretty excited about this project, time management wasn’t too much of an issue. However, I wasn’t quite aware when I started how many steps there would be. The process involved going to a number of thrift stores and flea markets, carefully selecting images, scanning them in, editing myself into them, creating the code, then finally creating the movie files. What took the most time was creating the code, but I did feel myself growing more comfortable with the code. I was much more careful with commenting out which code did what, which gave allowed me to navigate through the code more easily. Though control isn’t the ultimate goal of generative art, the ability to understand my code more easily gave me a certain measure of clarity so I could ensure that my goals would be fulfilled in the project.

One of my main concerns would be whether or not the insertion of myself into the images is fully necessary or even noticeable in many of the pieces. Aside from the wedding photo, I inserted myself into the periphery of the images, purposely out of the main line of site.

With No. 4, I feel as though suddenly it becomes noticeable that, of all the faces turned towards the camera, only mine isn’t obstructed in the end. No.1 also has me in the periphery, and when the image turns red and everyones eyes are marked out, mine is the only one left.

However, with No.2, I inserted myself with my back turned. I’m not sure if my insertion here is done to any effect, really. And the accumulations on the three main subjects, while it erases them, doesn’t distract from them at all. In fact, my focus has mainly stayed on them.

At the end of the day, I’m quite proud of what I accomplished with this project. I like the series as a whole, and I think the pieces do quite well together. I think the red on the high contrast black and white photographs is quite striking, and I think I definitely achieved my goal in changing the narrative and nature of the photographs throughout the series.

Non-Linear Design Post-Mortem: The Strength Needed

The game The Strength Needed was a semester of fun, strife, and some sleepless night but by and large a wonderful experience and vastly informative for the next projects I inevitably wish to pursue next semester.


The game in its current state is a glorified walking simulator with a few deaths. While this may seem overtly critical as many of my paper prototypes and even the art itself seems promising in a finalized product, by and large it did not quite get to the point I wanted it to get to this semester. It presents several key features like the enemies that can kill you, some moving NPCs and a world with loadable levels, but the objectives, the A story if you will, was never truly finished so what you end up with when you have the art, a few things that kill you, and the ability to load between levels is a glorified walking simulator I suppose. A pretty one, but not near completion.


The project changed a lot over the course of the year. At one point it was a game about a small demon boy trying to defeat evil spirits while its body slowly degraded but then I decided to stick to the story of a game I previously made as a practice paper prototype that was way more well received then some of the other stuff I made this semester. One key feature that was in the very early paper prototype was the use of text, I cut out all of that. That is gone. I killed it with the power of a ‘delete’ button and sheer force of will. While I enjoyed the text I wanted to experiment with as much visual story telling as I could, even using words as structures and part of the world rather than using them in any narrative dialogue convention.

A lot did go right about the project. The art mostly and a lot of the walk cycles and the entire Den of Gas room. That room turned out amazing. It had the most features fully furnished and thought out. The Gas Mask Lady in it moved the way I wanted her to, the gates projected the big ‘NO’ signs with her face on them. It turned out quite well. In fact, I was quite pleased with many of the animations that I did end up finishing, the Gas Mask Lady, Box Dog, the Wise One, The Player, etc. These all tuned out quite nicely.


As for what went wrong…well the game isn’t done which probably feels worse than anything, time sorta got away from me on this project. Will be good to keep working on it over Winter Break but that doesn’t help the current product.

screen-shot-2016-12-10-at-9-25-50-pm   screen-shot-2016-12-10-at-9-30-20-pm screen-shot-2016-12-10-at-9-30-46-pm screen-shot-2016-12-13-at-11-39-35-pm screen-shot-2016-12-13-at-11-40-17-pm  screen-shot-2016-12-13-at-11-42-17-pm
Art was shockingly easy for me to handle. I thought that was honestly going to be the most difficult part but I ended up just going for it and creating something I was super proud of. The main movement programming also wasn’t too hard, really my main difficulty came down to the code as I was unfamiliar with how much of coding in Unity worked especially as it related to the animator and talking with the physics engine. That said, my experience with it got progressively better as the game kept getting worked on and now I feel far more comfortable with programming, designing, and Unity itself.


Not super pleased with my final result because of how unfinished it is but by and large I liked the art and the story. I’m gonna keep working to improve it as well and make it better. The code also could use some work but I’m glad I could get as much working as I did.

The Project was nonlinear in its subversion of genre and ability to make the player episodically visit worlds and places. I got a lot of ideas from the Flash Fictions and movies like Toto The Hero. It was so nonsensical and wonderful and captured a certain child like glee that I wanted reflected in my game. My classmates also provided a valuable insight into the game. As they pointed out flaws I missed or hidden symbolisms I didn’t intend, I ran with a lot of what they mentioned to me. In addition, my boy friend helped me play test it quite a bit and he has a keen eye for the wacky and nonlinear and helped shape those aspects of the narrative. Honestly, play testing mostly resulted in changes to code and added a few fun ideas like the gates that blocked people out. Other than that it provided reference for code to fix.

The project was adequately coded in the most bare essential type of way. I followed the GamesPlusJames tutorials almost exactly except in reference to super specific things for my game. With the tile maps I primarily aimed to create a 2D top down space with patterned designs rather than photorealistic worlds as I didn’t have the skill for that. The animations I spent the most time on, using long walk cycles, a death animation, and a few other cool tricks. Most of the enemies however used static jump type walk cycles. Collision also was used sparingly, mostly to keep the player in the map or kill them. I didn’t want an interact button really.

All in all, a fun project that I aim to keep working on.


Chris Haehnel

Game Proposal: The Strength Needed

The game I set out to do this semester was focused primarily on building on a lot of the work I put into the third Paper Prototype I did. This game was meant to focus on the one line that stood out from the short flash fiction, Industry Knowledge: “this will give them the strength they are going to need.” In setting out on this game I decided upon a minimalistic approach to the art, vying for 32×32 as my resolution instead of the smaller 16×16 or the higher 64×64. As for colour palette, I did not have much in mind, but heavy experimentation and contrast in colour is a prominent feature.

For gameplay I felt an easy approach with collision and loading new levels as the main source of interaction. The game would be more story driven than anything relying primarily on the characters and locations rather than any real concrete game play. Just your basic run of the mill walk cycles, collision, and nice art. In addition, I intended to use as minimal text as feasibly possible. The game should use primarily images to convey the overall story. Just as Industry Knowledge accomplished a lot with a little, I intend that with this game as well.

Another aspect I intended to include was the development of several varied uses of rubber throughout the game. As rubber plays a pivotal role in the story of Industry Knowledge, I wanted that reflected in every win condition of the game. Rubber = Power in the world of The Strength Needed. The PVC pants provide safety, the Rubber Ball provides a weapon, and the Balloon provides an escape. These rubber artifacts act as the game winning devices and provide The Strength Needed to defeat The Beast.


Chris Haehnel

Non-Linear Design Project Proposal: Migration


My goal for “Migration” is to create a 2D side-scrolling RPG based on exploration and interaction. I’m aiming for a whimsical, fantastical aesthetic reminiscent of pages from children’s books. I will express the narrative purely through visuals and won’t rely on text or symbols. Movement and interaction will be the sole mechanics of the game. This will emphasize exploration and action, the two essential elements of the game.


The player’s actions will influence the game world, and the player will understand their role in the story through the changes the witness in the game world as a result of their actions. The ideas of breakage and repair will function as central themes of the game. One non-linear technique this game will make use of is central trauma: the player, and anthropomorphic hummingbird with a broken wing, helps other anthropomorphic animals to repair damage in their homes. At the end of the game, these other animals reward the player not by literally repair the broken wing, but by constructing a hot-air balloon for the player, thereby restoring the player’s ability to fly.


The visual art may be the most important aspect of this game. I’ve chosen to create sprites in 128×128 pixel resolution—higher than we often see in pixel-art-based games—because I see that level of detail as necessary for the creation of my characters. I created early prototypes of sprites in 64×64 resolution, but quickly realized I would need a larger canvass to properly enliven the characters I imagined in my sketchbook. Developing my color palettes was also an essential part of developing the visual aesthetic of this game. Animating with bright, expressive colors that avoid garishness is important to this project.

Conference Project Post-Mortem: Distortion

doodle-7 doodle-9

What I have finally made are shapes that change.  I played around with different shapes using a call to ellipse and to curveVertex.  I used color, height, noise, and width to change the shapes.  Some pieces changed over time because I was not happy with how they looked.  I wanted more change in certain pieces, so I changed those to reflect that.  In some pieces, I liked how the vertex drawings changed, but the vertex drawings also kept increasing in size as well.  I couldn’t control how the vertex drawings grew over time.  I like how most of my pieces came out.  I like the colors I used for my Pastel drawing.  At first, getting shapes to change was difficult and I couldn’t figure out how to do it, but after messing with the code, I managed to change the shapes.  From there, getting shapes to change was easier.  Overall, I think I managed my time well, although I could have finished my last piece sooner.  I think my pieces turned out well.  I think I was able to show my vision for my project well.

My projects were coded with active mode to bring the shapes to life.  I used variables for conditionals, and to make certain coding easier.  A lot of my pieces have similar color schemes, but in a few I experimented with color more; I used pastel colors and more contrasting colors for a few.  All of my pieces are animated so that they move and add on through time.  I used loops to make my pieces change and to create the vertex drawings.  Noise creates the shapes in curveVertex.  In one of my pieces, I used 3 dimensions to change the shape of the curveVertex.

Conference Project Post-Mortem: Scratch Lag

1screen-shot-2016-12-08-at-12-39-29-pm 2screen-shot-2016-12-08-at-12-41-37-pm screen-shot-2016-12-08-at-12-42-46-pm.3 4.screen-shot-2016-12-08-at-12-38-27-pm

I attempted to make hard-coded and animated recreations of Hirsh’s style from Scratch Pad using processing and although some do not fully capture the expressive experimental style of his film I am content with the results.

The project first began to change from my initial intentions when I had to understand the limits of the softwares ability to create functions that would sometimes contradict each other in order to create the same patterns as Hirsh. This was particularly the case when I first began hardcoding his patterns and when I had to animate them the coordinates of the designs would chaotically sprout of control. I had this problem with sketch 1, which is a screenshot of a hardcoded image, and in the film that pattern rotates across the screen but when I tried this in processing the entire image was rotated into a sporadic mixture of shapes. screen-shot-2016-12-08-at-1-16-39-pm


Even though this code did not turn out how I expected it to, I think it captures the same intent of Hirsh’s pattern by creating a pattern that is unrestrained by the intents of the artist, given itself its own sense of autonomy.

However, what went right with the project is that using noise was an effective method to capture the same effects of Hirsh’s patterns as well as the fine details of his film. I thought noise was particularly useful in image number 2 where I used “for” to create a series of black dots to apply the same kind of graininess as in the original footage, as well as to create a contrasting static effect with the stillness of the background. For image number 3 I used “laststep” in order to create a singular generative pattern of lines and implemented the “random” function to their coordinates.

When I first began on these sketches I momentarily struggled with creating shapes made to look like they were drawn with expression of a human or chemical reaction rather than the pinpoint accuracy of a computer. However once I properly understood the system of vertex shapes and their relationship with “bezierVertex” commands the process became much more fluid. I also found “curveVertex” shapes to become progressively easier the more specific I was with the shapes and fill I desired. This was particularly the case with image number 4 where I incorporated a portrait photograph of myself and outlined certain areas of my face to add expression and add random to fill my shadow in order to change its form.

Overall I think the sketches are aesthetically appealing but I also think they need to be more fine tuned and include more functions in order to show more signs of progressions in the forms displayed.

For image no.3 I changed the coordinates of the black foreground into a diagonal line in order to change the picture plane so that it wouldn’t appear as flat as before. I then drew subtle lines using noise to appear as plants being blown by wind and then created a black sun using noise lines. I then created  a second telephone pole and connected it to the first white telephone pole with electrical lines . I called the movie ‘Desert Highway’ because I think the overall image looks like a desert landscape and that there is an uncanny resemblance the figures and shapes in the film have to natural or industrial structures in real life.




For image no.2 I added a noise background with texture just like in the film and added noise to all sides of the yellow square so that there is a constant flow of movement with all the patterns in the sketch. I called this sketch ‘Static because I thought the noise patterns are quite intense like the electric static on an old fashioned television.



For image no.1 I used ‘push matrix’ and ‘pull matrix’ in order to make individual shapes rotate independently of each other. The shapes now rotate in a complete circle and also as a result create interesting patterns that continue to develop as the shapes continuously rotate.


I created another sketch from Hirsh’s film where a series of randomly drawn dots fill up the screen:


In order to create every uniquely shaped dot I used ‘curveVertex’ which resulted in the shapes in the recreation being almost identical to the original footage:screen-shot-2016-12-18-at-4-47-59-pm


I then made the sketch interactive by implementing ‘mouseX’ and ‘mouseY’ into the shapes coordinates along with noise too so that the shapes could be constantly moving and changing even when the mouse is stationary.


Conference Project Post-Mortem: Interactive Generative Art

Galaxy (2016) Callum Bayle-Spence

Galaxy (2016) Callum Bayle-Spence

My conference project, entitled Stellar Remnants, investigates the relationship between autonomy and interactivity in generative art through five pieces made in Processing. All of my sketches involve using key presses to influence the variables of a sketch to manipulate amount, size, movement, and color among other things. My first two sketches, Galaxy and Meteor Belt, both use 3D and loops, and expand in a similar way into the x, y, and z dimension. Despite the vast difference in appearance, how the key presses affected the sketch was similar. I used key presses to manipulate the bounding limits of the loops creating the 3D shapes. I also used matrices to rotate each sketch. But what really made the two feel similar was the communication between the interactive keys and the sketch, despite how different the two looked and were modified through interaction. I was worried but as I progressed I attempted different baselines for sketches to influence a different relationship between the interaction and the program. For example the last sketch I made, Shooting Stars, pushed me out of my comfort zone by using classes.

Meteor Belt (2016) Callum Bayle-Spence

Meteor Belt (2016) Callum Bayle-Spence

Involving classes was a difficult, yet worthwhile adjustment that facilitated a different type of interactivity connection. Namely what it allowed was for me to have three interactive bodies, whereas in past sketches only one single object or group would be modified through interaction. How a participant interacts with each of the three “stars” is the same, but the fact that each interaction is local to one body allows for the three simple circles to deviate from one another in a generative manner. Additionally to push the envelope I did not use a call to background, but instead a transparent rectangle the size of the campus that allowed for a feeling of animation, but also allowed for texture which none of my other sketches had yet.

Shooting Stars (2016) Callum Bayle-Spence

Shooting Stars (2016) Callum Bayle-Spence

What was intimidating about working with classes is that variables are kept within the class tab of the document, and all of my key presses up until then were in the main document in the draw function. These key presses were solely used to alter variables, and having to worry about which variables were where was a difficult hurdle. However, what I found out is that having classes actually helped with interactivity, as the key presses associated with the interactive bodies could just simply be kept in the class tab as well. Whereas in the past documents I had to have a multitude of lines of key presses with extensive labeling, the organization of the class tab allowed for a cleaner and easier to maneuver document. I am proud with how my ability to work with interactivity evolved into being multifaceted, and of course this could not have happened without what I consider my transitory sketches, Aurora and Nebulae.

Aurora (2016) Callum Bayle-Spence

Aurora (2016) Callum Bayle-Spence

Aurora was my third sketch, and thus the first one I worked in 2D, which like classes was an intimidating step considering I was losing the ability to work with a whole dimension. To give this sketch the same complexity that the 3D sketches had, I used multiple noise functions and calls to random, which became difficult as random and noise functions are trickier to control with variable changes.  The sketch ended up with a more quiet feeling than the past two for me, which went hand in hand with how I feel this sketch is the one I had the least control of. All of the other sketches have specific variable increases that I can see clearly reflected when displayed, whereas Aurora’s key presses to me are harder to correlate.

Nebulae (2016) Callum Bayle-Spence

Nebulae (2016) Callum Bayle-Spence

After grappling with Aurora for so long, another 2D sketch was daunting, but Nebulae came to fruition in the most broken apart process out of any of the sketches. For the other four I worked at the processing document until I had a foundation I was satisfied with, then I ran with it until 90% completion. Nebulae was quite different in that even after my initial idea of looped transparent circle getting progressively smaller, I had to leave the sketch and come back multiple times to make it progress. Ultimately I ended up with something I am proud of and believe looks aesthetically pleasing, but as far as interactivity is concerned I view this piece to be the weakest.

Galaxy : Ruby

Galaxy : Ruby

Galaxy : Emerald

Galaxy : Emerald

Galaxy : Rainbow Diamond

Galaxy : Rainbow Diamond






With the other sketches I believe the interactions were logical but the changes that occurred had a degree of surprise and worked together like multipliers to add to the spontaneity as more were interacted with. Nebulae on the other hand does not have that same degree of surprise, and if the other sketches had interactivity that multiplied, this one added. Different bodies could be interacted with, but in interacting with multiple elements it was not as if a whole new thing was being formed, just two tampered with shapes. Despite this setback, I am quite pleased with how this project turned out.

Meteor Belt : Venus

Meteor Belt : Venus

Meteor Belt : Cosmic

Meteor Belt : Cosmic

Meteor Belt : Negative

Meteor Belt : Negative






As a whole adhering to a space theme as well as involving interactivity served to be an interesting skew to my creative process that brought up many questions about aesthetics and what should get prevalence. Interactivity allowed for me to give my sketches several colorsets, which also begged the question whether to keep a consistent color theme over the sketches or use what fit each best. I opted for the later as individualizing the colorsets, I believe, was better for highlighting the differences in interactivity.

Aurora : Alone

Aurora : Alone

Aurora : Love

Aurora : Love

Aurora : Other

Aurora : Other






Nebulae : Mole

Nebulae : Mole

Nebulae : Lark

Nebulae : Lark

Nebulae : Crab

Nebulae : Crab






Shooting Stars: Dusk

Shooting Stars: Dusk

Shooting Stars: Twilight

Shooting Stars: Twilight

Shooting Stars: Daybreak

Shooting Stars: Daybreak

Conference Project Post-Mortem: Nature + Code

My conference project’s theme is nature and its replication using code. Nature is known to follow a system and set of rules while utilizing the slightest bit of unpredictability. The same can be said for coding: there are rules to follow, but there’s a lot of room for randomness. I wanted to incorporate this within my code and find just how close to the beauty of nature I could make my sketches. I was very inspired by Holger Lippmann’s work representing aspects of the natural world in his art.

When I began each sketch, I had a few guidelines but not many. For instance, the first sketch I created was Push + Pull based on my original sketchbook drawing of an ocean with the tide coming in and out. I knew what I wanted the general sketch to look like, but I was not prepared for the outcome which exceeded my expectations. With the use of multiple gradients, I was able to form the landscape without using defined shapes. Rather, the gradients are made up of individual lines that change color with each y value (probably?). Then, to add the value of the waves hitting the sand, I used simple noisy white lines. I was very pleased with the end result, not aware that I would even consider using multiple gradients. Even now there is still more I’d like to add, for instance clouds or boats in the distance, but for now I’m very happy with this sketch.

Sketchbook ocean

Sketchbook ocean

Push + Pull (2016) Kaili Aloupis

Push + Pull (2016) Kaili Aloupis

My following sketch Anthocyanin is based on an idea I had of flower garden. Flowers are very interesting and difficult to replicate exactly the same each time. Much like natural flowers, my coded flowers take on new identities with every run of the program. This was my most difficult sketch because it required me to take a concept like Wave Clocks, which has a lot of different parts, and expand upon it. I had to first find the right flow I wanted the petals to follow, but due to the noise in the sketch I could not create the same exact flower each time. I was disappointed, but eventually I made it work by controlling the variables as much as I could. However, it was very frustrating to find what exactly I could control and how. The rest was just a matter of finding the right colors and locations for each of the flowers.

Anthocyanin (2016) Kaili Aloupis

Anthocyanin (2016) Kaili Aloupis

Right now I’m still trying to perfect my Drip Drop sketch. It looks almost identical to the original sketchbook drawing I made earlier in the semester. I really loved the idea and wanted to make it as close to the original as possible. The idea was to create puddles during the rain, and as the rain falls there are ripples throughout the puddles. Instead of using a function to create raindrops like I had originally planned, I found I liked the appearance of simple random ellipses popping up.

Sketchbook puddles

Sketchbook puddles

Drip Drop (2016) Kaili Aloupis

Drip Drop (2016) Kaili Aloupis

Encompassing Sun is the one sketch I implemented 3D in. The first part of my sketch was the sphere in the center, and to make it more dynamic I wanted it to be a rotating sphere that zoomed in and out throughout the sketch. From there I discovered you could get some really interesting patterns when adding the rotate() function to noisy lines, hence the sun’s outer design. There was a lot I had to consider with this sketch such as transform() and push and pop matrix. A lot of it was just guess and check until I finally began to see how things were affected with each change. My plan was to originally just have the sun in the center, but I wanted other spaces in the sketch to be interesting as well, so the other rotating spheres could be other planets. It was a fun sketch that took me by surprise considering how much new material I used that I didn’t even think I would consider.

Sketchbook sun

Sketchbook sun


Encompassing Sun (2016) Kaili Aloupis

All in all, I’m very happy with my work for this conference. It’s really satisfying to see simple sketches in a notebook become dynamic artworks in code. I’m always surprised how different the final product is from my original intention, but I’ve always found it to be for the better. There’s still a lot I need to learn and understand in order to better control my sketches, but I’m very happy with where I am right now.

Conference Project Post Mortem: Replication of Works by Fred Tomaselli

Fred Tomaselli has created beautiful pieces of art on wood panels and various other materials that are considered to be “unorthodox”. His works have beautiful abstract patterns and designs, that look great to try to generate on the computer by code.

This conference I decided to replicate some of his most famous pieces and add a style of my own to it. I initially began replicating a design that consisted of circles that were repeatedly drawn around the canvas. As simple as it seemed as a design, it was a slightly hard to maintain the essence of Fred Tomaselli in the code, as well as add my own stylistic features to it.


By Saloni Patel, 2016

By Saloni Patel, 2016

Fred’s work has a variety of color gradients, something I haven’t added to my own generative sketches. Looking at other works of Fred’s, I tried to replicate a simple design of circles that variated in sizes. I added a range of colors and animated the design.

I tried experimenting with new technical lines of code like making a class file and using that to animate the sketches, and I used the noise, step and some sketches have some sort of interactivity.

By Saloni Patel, 2016

By Saloni Patel, 2016

As I went through each of his sketches, I realized that his work was a bit outside of my comfort zone to replicate, the colors, the size, the patterns, were so different than what I had been doing all semester. I have been critical of some of my designs as they aren’t as complex as Fred’s work, but I was very happy with experimenting with code and learning different techniques to code these beautiful pieces of art.



New Genres: I Expect You to Die

Pros and Cons of Dying (and Not)


(Below, left to right) Alexandra, Micha (Me!), Callum, Cat, and Anxin

Pro: When I was bumped from a deeply desired psychology class, I stumbled upon New Genres: I Expect You to Die. I thought, great! The perfect class for me. I love New Things and the expectation that a class will kill me. I approached my don, Shahnaz Rouse, with my choices for alternative registration. Her only comment on this class was, “Angela? Oh, you’ll have fun.” Knowing Shahnaz, this meant that I would most certainly die. I set it for my first choice.

Con: I did not understand the entire syllabus or any part of what I was getting into, but assumed I would. Many peers and parents and miscellaneous acquaintances asked what this class entailed, and the best I could muster was “coding. Also James Bond. And theater?”


An exercise in mindmapping: Odd Job’s character

Pro: In 2013 I quit coding. In 2014 I quit theater. In 2016, I subjected myself to both simultaneously and hoped I would swim. I was extremely anxious for every class, but somehow myself and 20 others swam! Even when I missed two classes in a row, I managed, thanks to Angela’s advice that, at the time, sent the butterflies in stomach to full rage. “Just watch, you’ll figure it out.” Little did I know, that was an excellent summary of the entire class: this wasn’t about any sort of product or goal or anything tangible that could be easily quantified. I Expect You to Die was about the process. The primary process was learning. Learning to code, learning to move in meaningful ways, learning just how many ‘rules’ four college kids could break in an hour before presenting our beautiful abstraction to the class– I was terrified, and learning.


Con: At the end of class, David said that he would send out the rehearsal schedule. Suddenly I understood the syllabus. I had accidentally committed myself to a theater production at Sarah Lawrence College.

Pro: I loved rehearsal. There was something very pure about the work we constructed. I didn’t understand the class until our first rehearsal, when David asked us to walk around the stage and, together as a group, “die.” From that point on, I realized that I didn’t have to know what I was doing: we would figure it out together. This, in combination with a silly desperation to produce code that I was proud of, helped me to create We Expect You to Talk.
folder-soundsThe script started as a simple dialogue, but then grew into what I referred to as “a bad sitcom,” complete with strange noises (see above audio files) in between. With over 200 lines written into the system, I was extremely proud of what I had done. I don’t think I would have pushed myself like this on my own, but every other component of the show felt so magnificent that I wanted to create in the same way. Even better, after presenting it to the group, I watched as my original idea developed into something more fun, better, and eventually a tool that we used to think about the show.

lines The middle of the script, because it looked much more impressive all on one line

The middle of the script, because it looked much more impressive all on one line

Con: We Expect You to Talk in its original form never made it into the show. This did not bother me in the slightest, as it seemed out of place with the show’s trajectory (and I still love my strange little code).

Pro: Several of the pieces that I worked on with other students did make it into the show. Every exercise and every scene David had us explore opened my mind in a different way. Between David’s encouraging face and Angela’s confident “why not”s, I found a space that I could truly explore and invent. Some nights I was a dancer, some a coding “expert,” some a folie artist. Every member of our class was as diversely useful and flexible as our out there ideas and not once did I think that my time went unvalued.

A collage of some code I wrote or helped with in the show

A collage of some code I wrote or helped with in the show

Con: Due to medical reasons, there was a significant portion of the pieces I couldn’t participate in for the show because they were too physical. Our dances and running and falling were so beautiful, but I couldn’t guarantee that my body would execute them safely.

Pro: That didn’t matter. Angela and David instead introduced me to my new home, the tech table. There I began my swift and terrifying education in projection and QLab. For those who are unfamiliar, QLab is a program that cues queues for sound, video, and picture. I soon fell in love with all the strange mapping, layering, and moving components across our expansive ‘stage.’ We began with one surface and expanded to many odd surfaces to experiment with our two projectors. An entirely new creative outlet was offered at the tech table. Although I still ended up ‘on stage’ for three scenes, my foray into the wild world of projection gave me a very particular joy.

Odd Surface: David's Back

Odd Surface: David’s Back

Con: By our 10 hour tech day rehearsal, the projectors and QLab were so strangely broken that we could only click and drag video to approximate where it should be on our stage.

Pro: Our incredible stage manager, Michelle Hernandez, and our tech expert Ti somehow had everything fixed and running perfectly by Monday. Over the course of the week and a half where the projections weren’t working, I also learned QLab and our projection maps much more intimately, to the point that we could run the show even without everything functioning. At no point in the semester did I stop and say “hey, I can handle this.” Part of I Expect You to Die was always staying on your toes and adapting to new directions. Whether it be a new stage direction, more clips to add to scenes, or even projecting a moving car across two thirds of the stage (thank you Ti!), Angela and David kept pushing us to further refine our piece as a group. Incredibly, we ended up with a show that had meaning, depth, and beautiful harmony between technology and human bodies.

Con: We still had to perform it.

(The Tech Table Pre-Show Pump Up, X Gon Give It to Ya by DMX)

Pro: Performing it, as it turns out, was the least scary part. Our four shows operated much like a group trust fall: yes, there were a million ways that the show could go horribly wrong. However, we had to trust that our entire team (Michelle, her assistant stage manager, sound tech, the runners, actors, and yes– tech table) would operate smoothly and together, always listening to each other and holding on tight. Between all four shows on all three nights, I think I breathed twice: once at the beginning, once at the end. Never have I witnessed such intense unity and composure as I did while watching our show. Every moment was terrifying, but that was a part of the thrill. Our show was 21 students on a boat with Angela and David at the helm, telling us to find a paddle. We used spoons, planks, and stove tops to bring us to a place where we felt that we could say, “this is it. This is what we are saying.”

Con: As we cleaned up our shoes and pants in the costume room Saturday night, it sunk in that this wild ride was over. There were hugs, well wishes, and gentle threats about not staying in touch. After the show, my formerly impossible weeks felt empty. Once you become a part of a group, a machine, an idea, it’s terribly hard to become an individual again. My brain was ripe with all sorts new ways of seeing that I had been taught and that I had exercised for weeks on end. Suddenly, my life was very normal.

Pro: We still had one more class.


(Left) Callum, engaged and ready to act
(Right) Me, Micha, ready to start a cardboard aviary

Our final class was two weeks from opening night, exactly. Somehow, those two weeks felt like two months. As each person stumbled into our room in the lowest floor of Heimbold they were greeted by smiles, hellos, and a few inside jokes that had developed during the show. It was a sad, sweet reunion that allowed us all to debrief the semester. There were talks of opening our own strange theater company and pursuing “weird theater” here at Sarah Lawrence. Perhaps our legacy of experimenting and playing will live on. Honestly, I am still unsure if I was in a theater production or a fever dream for the last month and have not fully processed either reality. Regardless of whether or not I constructed this entire fantasy in my mind, I loved every part of it, especially all the wonderful humans who made it happen. If you had told me last semester that I would be participating in the world’s greatest game, I probably would have laughed. I would likely laugh now as well, but for a different reason: now, I’m ready.


With Love,



Non-Linear Design Post Mortem: Into The Dark


The game I finally made is now called Into The Dark.  The goal of this game is to explore the world I created and to defeat the boss at the end of the game.  There are times were the player will die a lot but that is the only way to fully play this game, is by learning from your mistakes.  How to defeat the boss is to find the power ups in the game, without the power ups the boss will defeat you and you have to start over.

This project changed constantly for me, I do not think I went longer then a few days without changing my mind on something even if it was the littlest fix.  With this being my first game I probably should have not fixed it as many times, but I could not help myself I wanted a good looking game, I wanted the little details and I wanted the game to look perfect, at the cost of time though.


What I noticed went right with this game was the art.  I really enjoyed using Piskel and creating pixel art, it was very relaxing as well as fun!  I loved adding in the details, I worked in 64X64 which took a while to grasp how tiny it was but after a little practice I was able to get it.  What did not work for me as well was getting a story for the game.  I know I wanted something different, and I had an idea, but I just could not stick with it nor could I put it into a game on paper.  Another thing that went right was the paper prototypes that I created for not only this game but other games.  It really taught me out to put the story onto paper and really see what works and what does not.  What was surprisingly easy to achieve was first the pixel art, that came very easy for me which I was shocked because I have never worked in pixels before.  The second thing that came easy to achieve was after a long process of figuring out what I wanted to do, I knew exactly how I wanted to lay it out, where everything would be placed on my map and how I wanted it to look.  The most difficult thing for me was figuring out how to make my game non-linear, I have never done this before and anything that I have done similar to this in the past, was always very linear based.  So to go from a very strong background of being linear it was difficult for me to get the idea of how to be non-linear but I have a better understanding of it now.


When I look at how I worked and how others in the class worked, I very soon was quick to pick up that I was going to be a slow learner at first because I was really the only one to not know exactly what they were doing.  One thing that consumed most of my time was not being able to put the story all together.  Also, the tutorials I had to keep watching over and over again until I understood them, and they were not short videos so that took up a lot of time as well.  Now looking back at how I worked, next time I will defiantly start watching the tutorials as early as possible so that way I can watch the tutorials one at a time and then do the work with them.  Also, I have a better understanding of non-linear thinking so I think if I did something like this again I would be able to think of a story faster.

I think my final work that I have to present looks good, it is not much, but what I did try to do was make it look as good as possible.  I spent a lot of time correcting details of objects until I got them exactly the way I wanted them, and then sometimes I would still go back and make edits.  Some alternatives I tried were for example taking one tile I created for the ground, and for a different scene change the color instead of making a new tile.  It saved time and it tied in the two tiles.  Another alternative that I tried was watching one tutorial and working with the tutorial as it plays in the background, this helped a lot so I can watch what the tutorial did and I could follow along.


In the beginning I would definitely say that my game was barely non-linear, but after hearing other peoples critiques, other peoples games and examples I started to understand the concept of how to make a game non-linear.  I would not say mine is the most non-linear but I think it is non-linear.  For example, with this wishing well you would think it should be put next to the house, but no its in the forest, and it is not your ordinary wishing well.  Another example is the trees in the forest are the shape of any other trees that you have seen, very different and weird but a good weird.  One of the readings that I got inspired by was Garden of the Forking Paths, I really enjoyed reading that and I felt very inspired after reading it.  Even though this was not a reading, the movie Toto also gave me some great ideas on how to have a non-linear game narrative.  I thought the movie itself was really good as well as giving me some ideas for my game which was very helpful.

I can confidently say that have other sources of input and ideas really helped me a lot.  For example, when we had class critiques it was great to see how everyone played my game.  It was a great way to see how the player would grab the concept of your game, wether they got it or did not.  Also, the feedback was great and very helpful, it gave me different thoughts about my game instead of my own.  Reading other non-linear stories, watching non-linear movies, seeing different artist styles, other peers helping me with new ideas could not of helped me more, it was a huge part in my game being created and I think it is the only way to get a great game is if you have a lot of sources that go into it.



Some changes that I made after my playlets were starting with the terrain.  It had good potential at first, but it needed more, it needed to feel more like a world and less like objects got placed onto a map.  Another one was to fix some coloring in the world, having my main character lay on this very yellow tile, the character slipped away into the tile.  You could clearly see his clothes because they were very dark, but his skin disappeared so the main tile had to be darkened.  Another change was that the well was not only moved into the forest to be an unexpected surprise, I also turned it into a room.  It is very unexpected and exciting to see that you can go into the well and find what is inside.

How my game was coded, starting with tile maps, what not an easy start, like I said before I could barely get a story together let alone the art together.  But the tile map was at first intimidating because there is a lot of pieces to a tile map, and I mean that in the individual tiles themselves.  After you get the hang of the tiles, it is so easy to use especially in Tiled.  Tiled made it easy to create a map and just bring it into Unity.  Next, the animation I did not get a chance to get to, but I got really inspired by other peers work, especially with fading in and out of entrances and exits.  When I say fading I mean adding a fade to black every time a door way was used.  Another animation technique I wanted to try was having an animated character appear out of nowhere, for example pop into the screen from the sky.  Next, collision was a lot of fun to use and after I understood Tiled, collision became easier.  It was hard to decide where to put collision and where to not have collision but collision itself is a great tool and really adds a lot to the game.  Lastly, dialogue was something I was unable to incorporate but I would like to think that I added dialogue in a visual aspect instead of actually writing out dialogue.  The emotion and feel of parts of the game can tell its own dialogue without me needing to write it in.  For example, the character is happy and walking around a colorful world, it is a happy environment.  Then you look at the boss, it is dark and creepy with an evil look on its face, it is an unhappy environment.



Conference Project Post-Mortem: Boolean Oceanography

img_0997 img_0996 img_0998

Preliminary Sketches for Boolean Oceanography ^^

For my conference project, I have made a collection of eight videos that use generative methods to create aquatic motifs through Processing sketches. In each sketchggg, vector drawings warp, contort, and move across the screen in jumpy, irregular, and vibrant patterns—specifically, drawings of whales, jellyfish, and the ocean sun fish. Some sketches are technicolor, blending all of the colors on the RGB scale; while some are monochromatic black and white. All of my videos explore the relationship between digital environment and code, creating imaginative, dreamlike, semi-psychedelic vistas of glitched out aquariums.

In the beginning of my project, I had a much more static vision for a project that relied more heavily on a drawer’s sensibility rather than a coder’s. My initial plans accounted for sketches that were much less dynamic and much less up to chance. These plans did not include the addition of noise or variance, and overall would have had very ordered compositions. As I worked on my virtual ocean, I experimented with different ways of adding noise and variance into my sketches. The more I played around, the more distorted and less ordered my sketches became. While there is undoubtedly a lot of room to add more noise and complexity to my sketches, I am happy with the way that they turned out.

What is right in my pieces is the overall aesthetic. I was able to translate my hand-drawn, loud, messy style well into code. I was very happy with the way that my project evolved as I worked on it. I was unhappy with the amount of restraint that the code had, and wanted to give my work, and the computer, more freedom. This comes across well in sketches like Mola Mola, where the messy, chaotic, rainbow knot on the left hand side contrasts hard against the solid black right hand side. While the drawing of the sunfish itself is highly ordered, and it’s path is somewhat ordered in a way, there is a lot of noise in its motion. The contrast between order and disorder of the two halves of the sketch, and the contrast between the order and disorder of the sunfish vector drawing, definitely highlight the way my praxis, and ultimate product work, changed as I was working on Boolean Oceanography.

The most difficult part, as I already touched on, was adding disorder to my highly ordered plans. It was hard for me to figure out ways that I could hand over more autonomy to my code, and allow it to speak for itself without specific and repeatable instruction from me. I was stuck making these trite little animations that had very few if any generative qualities. But, as I experimented and learned to add noise into my sketch, my work changed and took on a life of its own. Adding more disorder, more noise, and variance to my sketches made them more dynamic, more engaging, and more interesting to look at. My biggest challenge, one that I’m not sure I’ve quite met yet, has been adding variety to my sketches so that they grow and develop on their own and are not so heavy-handed, calculable, and exact.

Surprisingly, learning to vector draw was the most dramatic development of the project. I was really limited by my ability to only draw simple two dimensional shapes in Processing. Getting to draw the ocean-life shapes that I wanted was the most rate-limiting step of my project. Learning to vector draw really broadened my capacity to achieve my vision, and opened up the on-screen canvas. I found myself becoming more inspired when I was working with my own unique drawings instead of basic geometric shapes. I worked slowly, but with good work ethic throughout this project, but at the end when I was trying to add more noise and complexity to my sketches, I could have been more patient and taken more time to more deeply develop each one.

In terms of code, I used the active mode to create sketches that loop indefinitely. Some of my sketches, like Cnidaria Medusozoa, uses a custom function to reset itself and begin fresh each time that the sketch runs its course. Others, like Rainbow Cetology 1 and 2, repeat over and over again, new layers piling on top of older ones and never completely resetting itself. I tried to limit the number of variables, choosing randomization in many instances over specificity for this reason. Most of the time, I used variables to represent specific x and y location values, and then added standard increments to those values, sometimes adding noise and variance at each step. While all of my animations loop in some way, none of my sketches are interactive. While visually engaging, the viewer can’t actually alter the way that the sketches run in any way. This is an area where I could implement change in another iteration of this project. Genuinely, I tended to forego using axes in lieu of setting variables and choosing my own values. For whatever reason, this worked the best with my coding sensibility.

Overall, my final work does achieve a lot of what my original vision set out to do. Aesthetically, it is very pleasant to look at and is a good representation of my artistic sensibility. I love the way that my colors explode across the screen and are vibrant and almost corny. My colors add an old school vibe like something from an old arcade game. Where my project falls short is in its complexity. I said in my proposal that I wanted my project to be dynamic and imbued through and through with generative qualities. Unfortunately, I was unable to give my code the autonomy that I wanted to. I had trouble finding the balance of order and disorder that I sought out, and, in another future iteration of this project, I would definitely throw order out the window and try to add as much chance as possible. I think that I held too much control without allowing the system its own due measure of autonomy.

screen-0001-copy c-1227 c-0391 c0415 c-0145 c-0054


Non-Linear Design Post-Mortem: Migration

For my conference project I created a side-scrolling exploration/adventure game. The player controls an anthropomorphic hummingbird with a broken wing. The player progresses through the game by bartering with other anthropomorphic animals, providing them with items they need to repair damage throughout their dwellings. Along the way, the animals reward the player with mysterious parts, and at the end of the game the animals reward the player by building a hot-air balloon that will allow the player character to continue his migration.


The project did not change a great deal from conception to realization. The bartering mechanic was part of the game from the beginning, as was the general structure of the story and events. Decisions about what other animals to include in the game and what problems the player helps them with did change over time. I’d originally planned to include swallows in the game, but decided variety among the animals would be best. I opted for a bird, insects, amphibians, and mammals. Some animals in the game can fly, while others are terrestrial or amphibious.

A lot went well during my work on this project. I’m quite pleased with most of the art and animations, although it’s imperfect. The player character was the first sprite I created for this project—before I had a clear sense of the aesthetics of the game—and the color palette doesn’t feel entirely at home with the rest of the art throughout the game. The tree interior and cave environments are most representative of the style I aimed for with this project, whereas the colors in the grass and pond environments are something I’d revisit.


I had no prior experience creating pixel art—and very little experience with visual art in general—but I’m pleasantly surprised by the results of my efforts. The game looks quite good. I also had zero programming experience and anticipated that programming this game would cause me a great deal of frustration and confusion. However, I found myself able to write all of the code this game required by adapting the basic concepts behind the Player Controller script presented in the GamesPlusJames 2D RPG tutorials on YouTube. I spent nearly two days writing my State Controller and Inventory Controller scripts and getting those to work, but generally I encountered few frustrating obstacles while programming this game.

The animations required for this game were without a doubt the most difficult aspect of the process. The walk cycles for the player character required over eight hours of work, and the animation cycle for the water wheel required four-to-five hours.


I could have managed my time much better while working on this project. Finding sufficient time to work wasn’t the issue—I invested a great deal of time into this project—but the timeline of my work in no way correlated with the timeline laid out in the dev cycle. One major reason for this was the complexity of the art and animations. Early in the process of creating concept art and designing sprites, I decided to work in a resolution of 128×128 pixels. Rather than working with canvasses comprised of 1,024 or 4,096 pixels total, I worked with 16,384. In addition, the game includes some fairly complex animations. Both player walk cycles contain eight frames of animation (and because of shading and the broken wing creating the second walk cycle wasn’t as simple as x-axis reflection of images), and the water wheel animation is made up of eleven frames.


Because of the level of detail made possible by the higher resolution, creating the art and animations for my game consumed the vast majority of the time I dedicated to this project. I’d estimate that I spent ten hours on art and animations for every hours I spent coding. I knew early on that I’d have to deviate from the dev cycle because of my dedication to the visual aspect of the game, but even then I began coding in earnest far later than I’d planned. As a result, there’s still uncertainty about the state of completion my game will be in by the end of the semester.

The non-linearity of this project stems mostly from two techniques: defamiliarization and central trauma.  I present common animals in anthropomorphic forms, and these animals exist in constructed dwellings, wear clothing, and have a barter system. The hummingbird player character has a broken wing, and he provides assistance to various other animals by helping them to repair broken objects in their homes. I develop the motif of breaking, of damage, throughout the game, and this motif reaches its resolution at the end of the game once the player character has helped the various animals fix their broken things and the animals have rewarded these acts of kindness by building a hot-air balloon.



I took some inspiration from Adam Cadre’s “Photopia,” specifically from how Cadre incorporates the non-linear technique of central trauma into his story. “Photopia” revolves around its central trauma without addressing it directly; instead, it sort of prods and catches glimpses of the trauma through a variation-on-a-theme repetition. The player or reader grows to understand the trauma through association and pattern recognition. I attempted to approach central trauma in a similar way in my own game.

I had numerous children’s books in the back of my mind while creating this game, and influences include the Frog and Toad books by Arnold Lobel and the animated film “The Wind In the Willows,” directed by Dave Unwin and based on the books by Kenneth Grahame.

Although I may not implement as many of these changes as I’d like before the end of the semester, I was encouraged by play-testing to include far more objects within the world that allow interaction. Play-testing also encouraged me to add reaction animations to the NPCs when the player interacts with them.

To create my maps, I used Tiled in combination with larger images inserted into the game directly through Unity as game objects. I used collision and key binds in order to support proximity-based interaction without the interactions triggering automatically. For example, I wanted the player to be able to walk past doors and NPCs without interacting if the player wished, so my code requires to player to collide with an NPC/object and use a command in order to interact. I came up with one solution that I’m particularly proud of to the problem of the sky. Although I first considered simply adding one large blue field behind the trees in the forest level, I knew I wanted a subtle gradient in the background. However, I also knew that the gradient would shift as the player moved along the map, so I created a gradient field of blue about the size of the camera’s field of view and added it to the game as a child of the player so that the gradient would move with the player and remain constant.


Coding the State Controller and Inventory Controller proved to be challenging. I created string of boolean logic comprised of nests-within-nests, activating and deactivating eighteen different variables in different orders based on the player’s actions. This caused me a great deal of headache, because the first two or three versions of these scripts failed to work as I’d intended. I felt confident in my logic, my nesting of if/then statements, and my organization of the eighteen bools, but pinpointing the exact cause of my code’s dysfunction took hours of thought and experimentation. I eventually identified the problem: my code was structured around the location of scripts attached to game objects throughout the world, however, when Unity fails to locate an object in the current scene, it ends its search rather than attempted to locate other references game objects. My solution to this was to restructure my State Controller script by nesting all of my game object searches within a lines of code that checked the current scene’s numeric identifier. Therefore, when the player occupies scene one, the State Controller script only searches for the game objects present in scene one, and none of the game objects present in scenes zero, two, and three.

Overall I found this project exciting, challenging, and highly educational. I may continue work on this project even if I don’t I plan to involve myself in game design projects in the future.

Non-Linear Conference Proposal: Heretic

For my conference project, I am drawing from marxist feminist texts – Caliban and the Witch and Revolution at Point Zero by Silvia Frederici – to make a game that reveals the powerless position women have been forced into by the hands of capital. Frederici explains in these two texts that in the transition from feudalism to capitalism, it was necessary for women to become an unpaid source of reproductive labor. This transition was anything but peaceful – it happened in violent bursts that culminated in the witch hunt. For capital to convince women that their work – reproductive work – was not work worth being paid for, it first had to systematically revile femininity by equating womanhood with unholiness. Not all women were targeted; the primary targets of witch hunts were, unsurprisingly, women who held some sort of power outside of the patriarchal system – widows unbound by marriage, herbalists who wielded the power of nature, and midwives who had power over birth. The female revolutionaries that actual threatened the system were often spared by the witch hunters, because killing them would have given validation to their cause. The degradation of female power during the witch hunts forced women into a position of fear, and allowed men to kill those women who threatened to exist outside the bounds of their power.

Some sketchbook pages (with notes from my readings):










I’m using illuminated manuscripts as inspiration for the visuals of my game. The game will center around a young girl who can pick items up and bring them to a gathering of women in the woods. Whether or not the gathering can actually use magic is unclear, but they will change the village of the young girl based on what she (the player) brings them. A potted plant will give the herbalist a garden, but may arouse the suspicion of witchcraft by the other members of the town. The protagonist’s actions can affect the fate of her town, for better or for worse. Ideally, the game will convey both the fear and frustration of women during a time period in which being independent from men could be prosecuted with death.



The protagonist in the herbalist’s building, with a potted plant.




The protagonist with an old woman, near the (uncompleted) herbalist building.







The protagonist with other interactive items – a sword and shield.

Non-Linear Design: Post-Mortem ADAM

Despite this being the last paper test, what became clear to me is that I want to work over the narrative ideas this game still works by: particularly, and at this point, the game is still too linear. Here a much much more non-linear approach can actually really help me out … the elevator (Tree of Knowledge) does not need to take me somewhere, for instance – this is an idea I really love: instead of going somewhere, the elevator just brings me back, perhaps. But that can become more complex –

As a side-note, I am getting more and more into designing my game on tablet. The artwork used for the paper prototype was actually painted using the app Procreate on iPad, with the Apple Pencil.


img_0002 img_0001

I am putting most of my work into designing the Garden at this point, so what I am arriving at is a conception of the elevator as a device to actually initiate change in the Garden. The main character might step into it, there might be an interlude, perhaps something wildly unexpected as the “elevator scene,” and stepping out again, the Garden has changed a bit, or even dramatically.

The non-linearity lies in the fact that the Game now becomes cyclical: in fact, perhaps scenes reoccur in the elevator, and “earlier” states of the Garden can be returned to. I think I am thus abandoning the whole office space I was envisioning, and contenting and enjoying myself just developing the Garden as an explorable space in and of itself. The goal I arrive at in this way for this class and this semester is then to complete a game that works by these shifts in emphasis. In the technical sense, I want to have the main Garden scene (initial Garden), an elevator scene, and then another Garden scene, showing the Garden in a new light.


What I have come up with so far is a daylight change to the Garden. What I initially developed is the Garden at dusk: and everything this symbolically suggests. There is a dark, gloomy city in the background, and somehow the earth the character moves in is barren and dark too.

I am thinking of contrasting this view of the Garden with something much more cheerful: fresh, green colors for the palette, a rising sun in the background. Angela and I were talking in conference about how the Garden might thus come to take on a quality of being alive: a living, breathing organism in its own right.

On the technical side again, this image has the color palette I am thinking of for the second view of the Garden.


This is a wall mosaice I found in the NYC subway system: I think it was a station on the F-line somewhere … (unknown artist). The colors a cheerful.

Again on the subway (the subway as a repository of art, and the time to look at it too – waiting for my stop; price of admission $2.75) I saw this piece (again unknown artist) that develops a vision of technology (transit, the train) and the city much more optimistic, as indicated by a similar color palette to the when I am eying at the moment –

img_0056img_0055 img_0054

Thinking about my landscape like this is fun to me: it’s a project that is carrying over into the rest of my life. I am curious as to where these things might be going, thinking beyond this semester as well.

For now, it is a challenge to develop this alternative form for the Garden. What are the changes I want to make beyond those to the color palette? There is a whole other aspect to this, less expected: designing a slightly “fallen,” strange, barren Garden was more fun that creating a fresh, new, healthy one. How might this aspect influence my design approach? How might I consciously let it? I want to see if I can tie it all in to work nicely together and provide a continuos experience by Game Night!

Non-Linear Design: Proposal ADAM


In A Day on the Grand Canal with The Emperor of China David Hockney brings all his expertise as a contemporary painter to bear on an analysis he does of a 17th century Chinese scroll painting. The most striking aspect about this scroll is the way it engages space – I called this Spatial Elaboration in the title of this post. Hockney illustrates an example of this when he arrives at an interesting junction along the river. Coming down a street in a village, our view works from bottom left to top right. But if you pay attention as the street goes around the corner, the viewpoint shifts: the lines of the roofs of the shop stalls, and the store fronts indicate as much. We see sides we would not see if the viewpoint stayed the same. It is a shifting perspective we are talking about now. At the same junction there is gorgeous wooden bridge with a rounded top line that is seen from the bottom right, the same place the second order of store fronts is seen from: when you go to the top of the bridge then, with your mind’s eye, the wall of a house becomes visible that would only be visible from the bottom left, the perspective we had in the first place. The perspective shifts organically, according to the needs of the art in the painting. So you see what you need to see when you need to see it, but it still all makes sense to the logical mind too: it is not paradox in the end, actually, because it works. As Hockney remarks about the experience of seeing, and analyzing, the painting, these devices “make it far more spatial than our old friend Canaletto.”

There is also another scroll, from slightly later, painted 75 years after the first one. Hockney is keen to trace a difference in style back to Western missionaries arriving in China with examples of Western works, deploying fixed perspective systems, in the time since the painting of the first scroll. The scroll again depicts a journey by the emperor, but this time “everything is beginning to recede: even the landscape is receding, the [emperor’s]  boat going into the space, as it were, and not along it.” It is true, the parallel lines and fixed focal points draw our gaze very much into the picture, and at that, into one particular point at a time, instead of gently over the surface of the whole thing.

Difference in spatial qualities extend beyond the vista of the whole, to the depiction of the particular: the characters are, Hockney notes about the first scroll now, less suspended in space. They tie in more organically with the land and the village and the river because they themselves have the organic features of animation and engagement with the other figures in the scene. There is linkage, and overlap: there is the unexpected effect of depth now that the more two-dimensional space (in the absence of the one vanishing point to help create spatial depth in a more three dimensional sense) is broken up like this, or rather, played with actually.

There are interesting relationships between elaborating space, and elaborating time: Devices relating to “telling time,” even the story of time on one level, include such creative tricks as subtly shrouding the scenery in mist to convey a jump, as it were, in space, and therefore time, at times: the mist goes on to get so thick that only individual aspects of the landscape remain visible, and coming out the other end, the space we were in has changed. This particular device was a way to dissolve an edge too: there is no saying where or when boundaries were crossed, or to what extent; instead it is a continuous flow through the physical scroll (through a device like this made even even more capable to “hold” vast amounts of space that the 72-foot-length of the scroll already does).

These strategies, for this is what they really are, to handle space and time and the narrative they can construct into a work of art relate very practically to where I was with my game at the time of the Unity play test and where I am now still: in fact, these questions will go with me until the game is fully developed. If I boil the aspects I talk about above down to the shifting perspective and the mist-device in particular, I can definitely find junctions and spaces within the overall space of my game to deploy these, or similar ones, in the vocabulary of the game language I have already established. For instance, a version of the mist for me might be a cloud shaped and colored to parallel the clouds already present out on the horizon line.

This very trick would also be a way for me to address a criticism that emerged in the play test: the question of the relationship between the landscape in the “back,” as it were, and the main Garden. Can characters cross over? What is the significance of the city? Bringing things like the clouds out from the back into the front, playable space, represents away to tie it all together aesthetically, if not thematically, perhaps. Perhaps I really don’t want the character to go to the city in the end, in the game and where I am headed with it now that is – I simply don’t have plans for that (yet). But a device like this can give me a bit of breathing room: by creating a bit more of a unified field of sorts for the whole game to organically come together, this question suddenly does not seem as important anymore.

An overarching design idea is to actually shape the landscape of the Garden in the shape of a fish, the ichthys, or the Jesus Fish in Christianity: that was an idea I had to begin with actually, something I subsequently went away from, and now would like to come back to.


The relationship of the Garden to the city can be something like the river, river bank landscape and villages on the one hand, to the city behind the walls at the end of the scroll in A Day on the Grand Canal on the other. The river landscape exists in contrast to the city, the city does not need to fully explored either. The scroll’s artists were also not very concerned with their city: in fact, they made heavy use of the very mist device I was talking about, not so much to jump in space this time (that happens too, though) – but to pass over the city, to choose not to elaborate on it. It is the outside form of the thing, rather than the inside detail, that comes to fulfill some function for the rest of the space, and that is fine. I just need to put my finger, in not directly on, then at least a little closer to, what that function might be.


In these ways, I have found my work to develop very organically, and in pushes and rushes and inspirations rather than continuously. We talked about this in class: the ideal conditions to get artistic, creative work done. They seem really different to more intellectual and academic work. For me it remains environmental, and has a lot to do with my schedule: I do not think I can do this kind of work as easily or to a better quality if rushed and to a deadline. I really notice it when I have things from my other classes on my plate … when I compare those days to a weekend with a little or nothing to do, it’s the latter I can get a lot of doodling, drawing and writing done in. The ideal for me is a lazy, rainy Saturday morning, with a bowl of cereal and a book – but this stands opposed to more realistic and practical requirements life makes generally.

Right now I want to push what I can do with animation and collision to bring the world I am creating to life. I want to use collision more than just on the edges to create unexpected obstacles and thus add complexity to the surfaces. I am working on the river right now, one more strategy to tie in the background to the foreground. I had already established the body of water coming and going into the cityscape: I want to extend that into the Garden directly and exploit it as a great creative opportunity for some atmospheric animation. With perhaps only two frames, or more, I would love to add mirror reflections and the light bouncing off the surface of the water as movement. I would love to add falling leaves too, to the trees.


Lastly, one more thing I want to change a bit is Adam’s walk cycle, which as it is now does not have very pronounced leg movement:


Conference Project Post-Mortem: First Impressions


My project is based on the works of Lothar Quinte, whose most known work is featured on First Impressions of Earth by the Strokes. I decided to animate and apply what we’ve learned in class to his images. Throughout the project I kept updating the images with what we’ve learned in class. Quinte’s works are simple and vivid. The goal of my project was to alter this fundamental theme of his artwork. The most common concepts I incorporated were noise and dimension.

In Kreisformation in Rot auf Violettem Grund (Circular Formation in Red on Violet Ground,1965), I added noise to the circle so that the size would change. In order to make it look like the circle is moving in and out of itself I incremented x2 and y2 by y. At first it was just something I had tried out in another sketch; however the result of a circle struggling to maintain a size was something that I wanted to include. I added dimension to the background to create a sort of texture. I wanted the end image to look like a record button since my project is based on an album. This is the sketch a featured at the top of this post.

In Untitled (1965), the artwork featured on First Impressions of Earth, I played around with incrementing the diagonal lines into a swinging motion and reset the framecount. I added dimension to this image as well to create a textured background. The one part I found difficult was to fix was how slow the lines swing. I wanted it to be more of gradual pace but once I added dimension it moved much slower than the original sketch.



In Quinte’s Untitled (1969) and played around with incrementing again – the end result created a textured background when two of the triangles swing down.







In Ohne Titel (also “Untitled”), I used alpha and noise to exchange the singular diagonal lines in the original for multiple lines extended to the corners of the canvas. Furthermore, to add a subtlety, I included an animated ellipse at the background of the image. In the original image there is lighter red spot on the right side of the image. To reflect this in my sketch I used alpha and animated the ellipse to move back and forth throughout the canvas.

Finally, in Blue Fields, III I tried to maintain Quinte’s simplicity in it’s entirety other than moving around the boxes and adding a repeat count.



It was a lot of fun adding the things we learned in class to this sketches. I was particularly surprised by how easy it was to add dimension into a sketch. I really love the way it adds a texture – especially one that is almost feathery and light. It was challenging to figure out how to adapt Quinte’s paintings and retain his style. As a new coder that is still learning about Processing, I was interested in chaotic, complicated sketches that contain a lot of detail. With Quinte’s work I had to try to be more subtle about it because I didn’t want to estrange myself from his simplicity. I don’t think that I’ll ever be truly done with this project – just like Quinte was never finished with his series of untitled images.


concept ideas


concept ideas

Conference Project Post-Mortem: Don’t Forget to Blink

My conference project assignment was to use Victor Vasarely’s optical art pieces, and recreate them using Processing. That wasn’t the goal, though; my goal wasn’t to make something that already existed. It has always been, ever since I started pitching conference ideas, to surprise the brain. The human brain is constantly searching for change in the world; it is always looking for the unexpected, which is why I wanted to create something that amazed. Something that has to be stared at, and every time, there is something about it that makes you look again. No matter what I ended up doing, that was the effect I wanted, and I hope anybody looking at the things I make feels the effort I put in to amaze the brain.

I took five images of work done by Vasarely and recreated them in Processing. At first, I was going to make them circle for circle, color for color, and pixel for pixel. Unsurprisingly, that was very inefficient and Circles pt.1 took me about two hours to code and about 30 minutes alone to do the color. Why did it take that long to code a bunch of circles? Well, I used individual values for the x and y position and the width and height of each circle. When one number was off, I had to find the messed up value and change everything that was affected. For every other sketch, I used variables, so it was faster overall and most importantly, easier to fix when I made a mistake. Throughout the project, I used the Digital Color Meter application on Mac to get the exact values for color. It took a while, but that was the best way to replicate the colors Vasarely used.


Circles pt. 1 ; coded in December, 2016, Kelsey Copley

Circles pt. 1 ; coded in December, 2016, Kelsey Copley

Circles pt. 2 ; coded in December, 2016, Kelsey Copley

Circles pt. 2 ; coded in December, 2016, Kelsey Copley









Mistakes were bound to happen; in my experience with coding, trial and error is a necessary part of the process, and that is part of what makes the final result so satisfying and amazing. At one point, I ran the sketch and a majority of my circles were nowhere to be found, and it was because I was using a minus instead of a plus, so they were somewhere off-canvas. That is just one of many examples I could give where things didn’t go my way, but there were also times where I would get the result I wanted and I would barely be able to tell the difference between mine coded on the computer and Vasarely’s painted works.

Patterns; coded in November, 2016, Kelsey Copley

Patterns; coded in November, 2016, Kelsey Copley

A common concept among all of the pieces is color. Color was so important in this project, I’d go as far to say color carries whatever success my project has. Variables became increasingly important as I worked on this project as well. As I mentioned before, only one of the pieces was made without variables, and it was by far the most exhausting one to make. In Patterns, I relied heavily on loops and break and continue. I used the primitive shapes for all of the pieces, ellipses for most and arcs in Patterns. I coded using the x and y axes for most of the sketches as well. One of my sketches is animated. Abyss was the first of Vasarely’s work that I finished, and while the color gradation was very successful in adding depth, I really wanted to make it move, so I made two of the series of circles and made them pass over each other. Elements I want to add in the future to these pieces and others like them are more animation, a small amount of noise, and a basic level of interactivity, that would most likely involved color changes.

Abyss pt. 1; coded in November 2016, Kelsey Copley

Abyss pt. 1; coded in November 2016, Kelsey Copley

Abyss pt. 2; coded in November 2016, Kelsey Copley

Abyss pt. 2; coded in November 2016, Kelsey Copley








“How was it to make?” My classmates and I were asked this question all semester, and it always stuck out to me as such a startling question. Each time I thought about it, my mind went blank. How was it to make? It was just hard and complicated and confusing, and most of all, frustrating. But it was also amazing and beautiful and so dumbfounding. How am I supposed to put hours of staring at a screen, countless dashed hopes, and unexpected results into words?

Coded in December, 2016, Kelsey Copley

Coded in December, 2016, Kelsey Copley

How was it making this conference project? The first word that comes to mind is stressful, probably because I just really wanted to get it right. More than anything, I just wanted to get it right and do everyone and everything justice. This made every second that I worked on and thought about my project miserable, until today, when I finished recreating the five Vasarely pieces, and made a few Vasarely-inspred sketches like the one shown here. Honestly, I don’t know what changed. One theory is the pressure of having to complete this post. The necessity to finish everything made me appreciate Vasarely’s work, the process of coding, and what I’ve learned this semester a lot more. I actually enjoyed working on conference today, which is something I couldn’t say before.

Whenever I complete an assignment, a paper, a project, I always say that I could’ve managed my time better so that I didn’t have to do so much at the very end, but at this point, I think it’s just my style. I actually like the doing the work when I have the high pressure to complete it. I’m happy with my project as it is now, and I’m excited to incorporate more animation, some interactivity, complexity, and the logical next step, make some optical art in the third dimension. This project will never really be complete, as I will always be trying to astound the brain with my art, whether that’s generative or any other type. I have many plans to continue using Processing and inspirational artists like Vasarely and Bridget Riley to make things that amaze.

This project has definitely been helpful in mastering a lot of basic coding concepts like variables and loops, but I have also been forced to use colors beyond grayscale and the occasional purple. What I gained most from this semester was of course learning a new awesome skill. I had known some Java previously, but this level of understanding is not something I expected from myself. I also have so much more appreciation for technology, and I have been introduced to another facet of art that I will be involved in for probably the rest of my life.