“sway” is a project for an Independent Study course in Transcoding Literature. This program was built in p5js and pulls from live APIs to generate a unique poem that reflects the current conditions on the University of Denver of campus. I made a complete list of the champion trees that are part of the DU Arboretum which are selected at random when the poem generates. The temperature description and time of day are both reflections based on data being pulled from weather and world clock APIs, respectively. The bird in the second line is sourced from an ornithology API, tracking the latest bird sightings within ten miles of campus. The 3rd line, which is occupied with a placeholder, will be an array of Basho’s haiku lines that fit the theme of this piece.
We messed around with Perlin Noise in p5js last week and I got pretty excited at the possibilities of random generative animation. I kept messing with this concept and have a couple animations set up to link with audio. The amplification of the audio basically affects the speed and size of the animated shapes. I’m pretty shocked that I’ve gotten to my goal of tying these elements together, and will hopefully have p5 incorporated as an animated, interactive projection into my final audio piece for Sonic Arts.
Moving on, we jumped into creating custom functions which I can already tell is a powerful tool. Our project was to create a 20×20 grid of 4 different robot heads, with 4 different audio cues tied to clicking with the mouse. I’m happy to say I wrote the code without a lot of hangups, but I got stuck on assigning the audio cues.
For “mousePressed” I nested my “if” statements and rendered them inoperable, but got it fixed up with my instructor’s guidance *wink wink* and some help from my colleague, Rich. I’m trying to go the extra mile and make every individual robot head clickable, as of right now just each column is clickable.
I’m looking forward to learning Arduino this week, as it may be my gateway into figuring out a way to give my Sonic Arts installation that extra level of interactivity through touch activation. I want to tie my p5js code to physical objects that will signal the animation to change color and amplitude. We will see if I learn enough to get it done…