Thursday, April 20, 2017

Long overdue! - Talent show, video game dev, and bees!

Well, it's been almost a year since my last post. This is because I haven't been very active with music except for maybe the Blue Sky Talent Show which took place in the evening of Nov 16, 2017. So, to keep this blog semi-on-topic here's footage of my one-week-a-year band, The Dead Pigeons.  We had months to prepare for the talent show but I was on hiatus for 6 weeks concentrating on learning game development in Unity3d (more to come). So, I came back after my hiatus and we all got to rehearse for about a week while still trying to do my job. Here's video of the The Dead Pigeons performance:

I also performed in a recorder ensemble and played a saxophone solo. When I get around to digging up that old video footage I'll post them here as well.

So yeah... By the middle of 2016, all of my regular jam buddies had left New York to work out west in sunny California.  I guess what happened was I had all this free time so I decided to start developing video games.  I've been hungrily consuming tutorials and I even attended a weekend VR Bootcamp where I got my body scanned and put into an AR Business Card app. This is me testing it with a Metrocard:

Anyhow, fast-forward to a couple weeks ago, 4/1/2017...  I really wanted to try to do something impossible, which is to make a video game from scratch in one day, or over a weekend...  Earlier in the week I had chatted with a co-worker about a funny game idea involving bumblebees.   The idea would be you're in VR and a swarm of bees is surrounding you and you need to try to keep still and try not to get stung.  An alternate version of this game would involve shooting them with a bazooka or something.

I knew making this game in 1 or 2 days would be impossible since I had never really tried anything like this before, but I just needed to see how far I could get. So this is what happened:

I drank lots of coffee and looked like this for most of the day on Saturday:
10:00AM - 12:00PM 4/1/2017

Yeah, I stayed in my pajamas for most of the day...
And then some time after lunch I had built a bee hive, and a funky looking bee out of sphere primitives and then I taught the bee hive to shit the bees out like this. That's the thirdpersoncontroller standard asset running that is intended to be the target for the bees:

2:17PM 4/1/2017

I realized that the bees were spawning too fast and the rigidbodies were colliding with each other causing them to repel each other resulting in this funny scene.

4:44PM 4/1/2017
So then I tried to make the bees fly using purely rigidbody forces and I got them moving in an almost natural way but they were kind of wobbling around as if someone is pulling them with string.

7:23PM 4/1/2017
 I guess I got bored with writing the bee flying script so I added sounds. This is me going "zzzzz" into my MacBook Air.  I manually looped the audio in the Sound Studio App. The pitch shifting is pretty rough but it was a good start and I felt very encouraged.  My hope is to always remember to add sound as early as possible when prototyping a game. It just brings everything to life don't it? Plus, it's the sound of bees that makes them really scary in my opinion.

Late into the evening I refined the flying and targeting algorithms. I made some audio tweaks and also stabilized the rotation of the bees. One of the rules I gave the bees was not to get within a certain range so some of the bees revolve around the character because their targets are inside the illegal area. This was an accident but it made for some pretty cool behavior.

11:51PM 4/1/2017

The following video that I captured on Monday morning represents my final tweaks that I added on Sunday. I had big plans for Sunday but I was so burnt out from the previous day that I just tweaked the code for a couple hours. For the most part I was trying to get the bees to behave in a particular way that would seem natural and maybe be a little terrifying in VR.  In an attempt to make it feel like a game I made the bees die if they collided 5 times.  As a sort of indication of aggression due to bumping into things I made the bees get larger after every bump. Kind of goofy, but I wanted a quick visual representation of their mental states in a manner of speaking. Maybe they're bees with some pufferfish DNA thrown into the mix? Oh, and after 5 bumps they die and scream. Yeah, that's the infamous "Wilhelm" scream.

7:55AM 4/3/2017

I had plans to make it into a VR game but I'll put this down for now. This was a great learning experience in developing a flying / targeting behavior. I was pretty happy with the sound design for the bees and the pitch shifting that I linked to the bees velocity. I like that I got the bees to be very stable in their flight patterns but now I need to make them go a little more crazy.