The Bleeding Edge, Pt. 2

So, I’ve previously mentioned several new game audio courses that I’ve developed for the Music Tech program at Foothill College. (Actually, one of them is still just an outline that needs to be developed for next quarter, but I digress…) These classes are as cutting edge as we get in our industry, and there are some serious complications that come with exploring uncharted territory. When I wrote the very first edition of Avid’s Pro Tools for Game Audio textbook back in 2010, I had to figure out how to demonstrate the implementation of audio assets into an actual playable game. (The Pro Tools aspect of the book was no problem.) This required a great deal of research into available game development “engines,” of which only one was truly viable at the time: Unity. Unity was great because it had some decent audio capabilities, offered a number of demonstration game levels that could be used for the class, and especially because it’s free to use for game projects that generate less than $10,000 in revenue. (Ding! Ding! That’s definitely our situation…)

So we started down the path of using Unity for Avid’s book. We grabbed a couple of game levels, and spent a few thousand dollars having a programmer customize them for the book exercises. It mostly worked well, with a few back-and-forth development cycles and no major issues. Then, just as we were going to press with the book, Unity released a new version of their engine that broke some aspects of our game levels. Yikes! Nothing like that had ever happened with previous textbooks that I edited or authored. We scrambled to make some quick changes and went to press with about 98% functionality. In other words, I shipped a book that featured a software component that had KNOWN BUGS. All of a sudden, I was in the software development business in a way I hadn’t ever imagined. Anyway, we’re on the third edition of that book now. And there have been hiccups with the game levels that shipped with every edition.

Fast forward to Fall 2014. With the Winter Quarter quickly approaching, I found myself in a familiar position; I needed to put the final touches on the course materials for my Advanced Sound Design for Games course (which I’m currently teaching.) I had always planned for this course to use FMOD Studio (see below ad nauseum), but I needed to decide on a game engine (yet again). I really wanted to try something new after having used Unity for the past few years. Fortunately, the Unreal Engine from Epic Games had just added both a Mac OS version and FMOD Studio support a few months earlier(!). Now any logical, non-masochistic course developer would probably have run screaming in the other direction at the thought of building a course around an application that was effectively brand new. I am not that person. I jumped in head first and scrambled to make things work. And would you believe, it’s actually going pretty well. But not perfectly well.

The first major issue occurred when I built the course exercises around a “First Person Shooter” game template. I put in several weeks of work preparing the game, which put me at about the 75% completion point. Then, one day, I loaded up the game and got a bunch of errors. Showstopping errors. And because I was working in completely uncharted territory no one at Epic or FMOD could provide the assistance I needed quickly enough. Did I mention I was pretty much working on Christmas day? So I scrapped the “First Person Shooter” template and found a much more simple template. This one was missing a lot of the cool stuff that I hoped would impress students, but it was much easier to adapt to my course exercises. And everything went off without a hitch (at the eleventh hour of course). I packaged up all the files, uploaded everything to my Google Drive, and started teaching the class.

Ah, you probably guessed that wasn’t the end of the story, right? So, things went pretty well until about the third week of class. For a variety of reasons, several of my students were running the very latest Mac OS (“Yosemite”). Sidebar–Industry Pros know to NEVER update their OS unless they have a very good reason to make the move, and they certainly never upgrade in the middle of a project. But these aren’t Industry Pros.–End Sidebar. And they quickly discovered that some basic functionality in FMOD Studio was not working. To their credit, FMOD quickly released an update that addressed the issue, but the deadline for the exercise had already passed. So, I was forced to extend the project deadline to accommodate those students. No big deal, really. But did I mention that the new version of FMOD Studio fixed the Yosemite problem but broke the functionality with Unreal? For a few more days anyway.

Yeah, that’s my life… I do it to myself. My wife always jokes that “college professor” is supposed to be the world’s least stressful job. And I always respond, “Not if you’re doing it properly.” And sure, I could back away from trying to keep students right up there on the cutting edge. But I just can’t help myself.

The Bleeding Edge

I’ve been thinking a lot lately about the difficulty of keeping up with the latest technology in my classes. In my field, Music Technology, there’s an interesting split between foundation courses and electives. The foundation courses typically deal with basic concepts in audio engineering, as well as the fundamentals of using a digital audio workstation. In the case of the former, the basic concepts haven’t changed much in decades; the signal path from microphone to pre-amp to recorder was more or less perfected by the Germans during World War II. In the case of the latter, I’ve been working with our primary software platform (Avid’s Pro Tools) since the 1990s. These are subjects in which I possess a wealth of both academic knowledge and professional experience; both can be leveraged when developing, maintaining, and delivering courses. So far so good, right?

The core courses do remain relevant and will for the foreseeable future. (I guess that’s what makes them “core.”) But the core courses don’t reflect the current direction of the department or our industry. In this case, the most logical direction is audio for video games and other interactive media. (I’ll get into the employment statistics supporting that case in a future post…) I’ve written a group of new courses that push us in that direction. But, due to the lengthy process of updating degree and certificate requirements, all of these new courses are currently electives.

So the problem here is two-fold: first, game audio is a relatively new field, so not many comprehensive textbooks exist; second, the industry changes so rapidly that the relevant hardware and software is constantly in flux. As a result, I not only need to write my own curriculum for each of these courses, but I’m aiming at a moving target as far as which technologies to explore. Sure, there are core concepts that remain constant just as they do in any field. But in this field even the core concepts must be taught on recent technology; the way the industry moves, a computer/operating system/software configuration from as little as two years ago can be hopelessly obsolete! And that’s not even taking into account the type of computer, console, or handheld device that the consumer will use to play the resulting game.

The most challenging aspect of this situation is that I can no longer expect that I will be an absolute expert on the subject matter at hand. (A very uncomfortable position for someone who has always had subject matter expertise as a reliable crutch upon which to prop courses.) For example, I’m currently teaching a brand new course on advanced game sound design that uses a software application called FMOD Studio (see post below). But I didn’t truly begin learning the software until last month! (The application itself is only about a year old…) For the first time in my professional career, I find myself hoping that no one deviates too far from the lecture agenda and uncovers my ruse! Just kidding. Mostly.

But it’s actually working out beautifully. I’ve found that an essential aspect of teaching college students, which I’ve had the good fortune to do for the last several years, is letting go of the ego that you acquired through working successfully in the private sector. And now I’m going a step further and letting go of my need to know everything about a subject (or a piece of software) before I feel confident in my ability to teach it to students. I’m incredibly excited to teach this new material because its new and fresh to me. (Perhaps it’s the adrenaline?) And students are definitely picking up on that and getting excited, too. Perhaps exploring a subject together with my students is the only realistic way to maintain the kind of agility that developing relevant courses requires.

FMOD Studio

FMOD Studio was released last year, and it is quite an amazing tool for game audio design and implementation. Just the fact that it looks like a DAW and supports standard control surfaces is enough to raise some eyebrows. Training materials have been steadily rolling out, and I can definitely say that now is an excellent time to jump in. Sound recordist and FMOD guru Stephan Schütze of Sound Librarian has created the official FMOD 101 curriculum, which features a game project which integrates FMOD Studio and Unity.

And the FMOD team have also just released a video training series by Sally Kellaway that offers a deep dive into integration with the Unreal Engine (including some useful lessons on audio programming using UE’s Blueprint technology). There’s even an excellent vehicle engine design lesson, which appears to be incredibly easy using UE’s vehicle template.

I just completed the FMOD 101 online certification in preparation for teaching FMOD Studio in two new classes at Foothill College (MUS84B Advanced Sound Design for Games and MUS84C Music Composition for Games). I’m really looking forward to it.