Tina's ITP Blog

ITP Blog

Fortune-telling Meditator

fortune-telling-meditation-resized.gif

For my first assignment in the Fast Fun: Physical Controllers class, we were tasked to create two p5.js sketches that can interact with each other, one acting as input, the other as output, using our computer’s built-in MIDI control. Our teacher Dominic Barrett provided very useful example codes (here, here, here) to show how to set up MIDI. This assignment is to give us better understanding of how MIDI can control two separate files of code without using things like WebSockets, as we will be using this method to make physical controllers for our screens later on.

Screen+Shot+2564-03-29+at+21.20.20.jpg

While brainstorming a project for this assignment, I thought of recycling one of my projects from last year to give it better interaction. I created a fortune-telling machine during my time in Electronic Rituals, where the user physically shakes a container of sticks until one drops, looks at the number on the stick, and manually inputs it into the screen. The experience was only fun if you had physical lots to cast, so the digital experience on its own was useless. I decided to create a meditative visual that would encourage the user to breathe in and out, click, and get their fortune that way.

For my input sketch, I created a digital ball made of strokes that oscillate and change colors depending on how far your mouse is from the center. I added some text to give the user instructions.

For my output sketch, I originally adapted my Electronic Rituals sketch that utilized a JSON file that had interpretations of all 78 tarot cards. But after actually testing it out with my input, I found that a lot of the tarot interpretations didn’t really make sense with this interaction and were way too long. I found shorter fortune cookie texts on GitHub and rewrote some to make them suitable for this project.

If your computer has its Audio MIDI settings turned on, you should be able to make the two screens interact with each other!

This exercise was a fun and quick way to get my hands on setting up MIDI through code. I’m still a bit confused about the input and output ports, but was able to get this to work without messing with that part.