Working Draft
things to sift through:
-
Creating a chord verses one note at a time // polyphonic– how to have notes stack on top of one another / play in accumulating method to create a chord verses one at a time
-
Displaying Musical Note Letter– how to have the note name display when firefly is clicked
-
Limiting caught firefly XY values to jar how to restrict x,y inital values of fireflies to be out of jar // (sometimes loads over it?)
Potential Buttons:
- Creating a “Release Fireflies” button (clear from jar)
- Arpeggio mode? where it cycles through the noteFrequency array in order
- “Listen to Collection” button (plays back through an array of pushed “clicked on” firefly notes”
Idea:
After diving through some open datasets for bird migrations, I decided it would be better to go for idea #2 of musical fireflies first, and revisit the bird migration study another time in the near future. I thought it would be fun to create a chord building experience, where with each firefly you catch (mouseClicked), the firefly enters the jar and plays a note (like middle C). Collect 3 to build a chord (C,E,G).
I’m looking at using either Boolean Logic (is the firefly in or out of the jar for tone to play) or maybe splicing and pushing between 2 arrays?
References:
Used a website called Physics of Music Notes to help me know what frequency to use for the p5.js sound library Oscillator. Once the interaction is set, Maybe in a 2.0 version can try tone.js? It was fun sifting through their different demos ❤
Thinking about Arrays / Revisiting Coding train videos:
6.2 – Classes in Javascript
7.4 – Mouse Interaction w/ Objects – p5.js
7.5 – Removing Objects from Arrays
Helpful examples: