Homework #2
Homework 2: AudioVisualizer

Marise Van Zyl
October, 18, 2021
Music 256A / CS476a, Stanford University

Name
Hearing Colors

Description
Don't do drugs, kids!

Screenshots
Screenshot Collage

Demo Video
Watch the Demo

Narrative Video
Watch the Narrative

Instructions
READ_ME.txt

Production Build
This program is built for MacOs

Unity Project
Click to open Unity Project Folder

Ideas and Comments
This visual program had many challenges. I had 3 different versions, each with its own problems, limitations, and opportunities. During my first 2 attemps, I relied heavily on models and placing them manually in the scene. I used the visual interface much more than actually scripting anything. This was not beneficial to my learning and with my final iteration, I decided to take a different route. I tried to do everything in my visualizer through code. I limited myself to using only capsules - a random choice, because I've seen a lot of spheres and cubes, but rarely capsules. Once I had my 3D object, I began coding. I wrote lines upon lines of code. I have multiple scripts, most of them barely work, but they are remnants of things tried. I learnt a lot about scripting for Unity and I'm glad I did it this way.

Is this my ideal visualizer? No.
Did I learn much more this way? Definitely yes!


OLD STUFF


Reading Response #2
Reading Response #3
Reading Response #4

/Chunity Progress Report

I have completed all 3 tutorials and honestly I found Rollaball to be the most tricky. I have completed it before, but somehow switching to a Mac has made everything new again. I also had a problem with my mouse giving input to Unity and only found that out after HOURS of trying to get the damned little blue ball to move. Once I figured that out, everything went smoothly and it was pretty easy. I put off 256A because I hadn't coded before and I took a cs coding course instead last fall. Turns out, that was the best idea ever. I find the script-writing super manageable and I understand what is happening in the different functions etc. Intergrating ChucK into Unity was a stretch, but the tutorial was super well laid out and I eventually figured it all out.

PART 3: ***IdEaS***

SO here is where I post my brilliant ideas? Stay tuned.
Idea #1
A flying airplane with a scrolling blue sky (but will it stay sunny and blue?) The smoke stream behind the plane will have the time domain visualized. The frequency domain, I don't know yet. Perhaps something with the weather? The colors of the airplane? The airplane windows. There are a lot of options for customization.
Idea #2
A buffet of sound visualization. A BuFF(e)T if you will. A Buffer Utilizing FFT. The different elements of the buffet will visualize the different elements. It will be a glorious feast of dsp - yum!


MILESTONE 2

I have chosen to continue with the idea of the scrolling sky and the plane. It was the idea for which I had the most formalized plan and ideas of how to actually implement it. I have created a scrolling blue sky using a rotating sphere with a cloud texture on it. For the plane, I just used a model from online. I added a small shake movement to the plane so that it's not just static on the screen. I can control how much and how fast it shakes. I have also added just a green block as a place holder for the green rolling hills that will hopefully come once I implement the history waterfall for the frequency domain. I also want to change more elements in the scene, such as the weather, or the shake of the plane and make these all dependent on the sound input. First I need to figure out how to get the different elements that I currently have to be in the right place and working properly.

Here is a tentative screenshot:

Milestone Screenshot

ANOTHER UPDATE!!!
Here's a short snippet showing what the audio visualizer can do for now.

Watch here!