Beaudry Interactive (b/i) is a small operation running out of David Beaudry’s home in sunny Los Angeles, CA, USA. When I say small, I’m merely referring to the crew size - four key individuals working at b/i in their day-to-day operations. Don't be fooled by the personnel count - by no means at all are the projects they’re working on small.
I dropped by Beaudry Interactive to spend some time talking with David directly about the life cycle of one of their projects in order to get a sense of where and why Max is involved. David has been using Max for almost 20 years - initially getting into it as a means to extend the possibilities of his clarinet playing by adding sensors and triggers to control lights and other content. (Does that sound familiar to anyone?) From there, he started pitching on gigs for Disney and using Max exclusively to complete them in the early days - drawing on the one programming language he knew best.
For this article, David walked me through a project that involved Max almost exclusively: The Inspector Training Course presented at the Discovery Cube by the Discovery Science Foundation here in the San Fernando Valley, Los Angeles - the first of its kind.
David told me that the initial pitch for the Inspector Training Course was the most difficult part of the project. Although he and Sean could imagine the final piece, convincing a panel of stone-faced museum curators how a system involving hundreds of moving parts is going to work (take a look at the project breakdown below later on and you'll see what I mean) with only a singular example as part of the pitch is difficult, to say the least. The curator's main concern had to do with the children being in awe of the technology - the Surface Pro devices they'd be using as their interface to a lot of the interactive experience - rather than focusing on the content itself. As David so quickly convinced them, children and young people these days don’t look at technology like other generations - these items have been there since they were born, and were merely another extension of the self for them. As David said himself, they were asking the DCLA to take a leap of faith in Beaudry Interactive. Thankfully they did!
So... what is the Inspector Training Course?
Set in a 2,200 sq. ft. open layout California Bungalow, the Inspector Training Course experience is a technologically ground-breaking scavenger hunt that teaches kids about conservation and sustainability to further the museum’s environmental stewardship goals. Visitors are outfitted with their own tablets and go on immersive quests to master the skills of a Home Inspector. The tablet is part teacher, part scorekeeper, and part guide. It provides bits of information as needed, directs the kids to challenges, and asks questions based on what they’ve learned and observed. Along the way, visitors meet animated characters embedded into set pieces that give important facts to help on the quest. Guests also engage with physical “work it out” challenges ranging from the power consumption of different types of bulbs to the effectiveness of low-flow shower heads. The ultimate goal for the kids is to earn badges and become “Super Inspectors”. Average game time is 15 minutes, with many kids playing multiple quests at a time.
With David’s 18 years of experience programming with Max (As he says, "Yikes!") on a wide variety of projects, he knew Max was capable, had a good idea how to build the various components that were needed for the experience and what their function would be, and how they would all talk to each other from very early on. His approach with Max was the same here as it is on every project: Start with Max as the center of the system, then begin to work out on the individual components (the tablet interface, game server, SQL connection, email server, docent machine, etc.). b/i’s take on many of these projects completed in the past runs like this: If it can be done in Max, great. If not, Max has so many ways it can reach out to other apps and programming environments (e.g. network messages, scripts, specialized tools like Syphon and Spout, etc.) that b/i just looks for a different tool to accomplish that specific job. David works on the basis of the idea that Max is the conductor - you just bring in a special guest artists to help with particular solos.
The time required to complete the Inspector Training Course was just seven months - from May to November of 2014. David explained that the first couple months were key, focusing initially on the “book” work:
- Figuring out and detailing the guest experience and gameplay
- Figuring out the underlying technical infrastructure
- Flow analysis of how guests would interact and move through the space (There were to be more that 50 challenges in 2000 sq. foot space, so b/i needed to make sure that individual areas didn't contain bottlenecks or too many challenges in a particular area.)
During this initial development time they also did little internal “technical” tests to make sure they could do what they wanted to do (or perhaps more accurately, what they said they could do), and then finding those special “guest solo artists” that they needed to bring in where Max wasn’t the best tool.
And of course lots of meetings with clients and stakeholders. Not only was this phase key to making sure everyone understood the scope of the experience, it was invaluable ensuring all the stakeholders had bought into the experience. Especially on such tight timelines, once b/i start programming and building media, and the fabricators start building the exhibit, there isn’t much time (or budget) to “figure things out”. David points out that it’s not to say there wasn’t a lot of tweaking along the way, but the overall structure of the experience needs to be solid before moving on to the next phase. Then after programming they jumped into design and development, where they worked simultaneously on graphics/interface design and technical design & programming while the fabricators started building the house. Lots of mock-ups, a couple playtests, lots of testing and integration and scaling the system up. That was about 3 months. Then they went into install (6 weeks) and test & adjust (2 weeks). David mentioned it was quick and scary with them only being on-site a couple weeks before opening. That was the first time they were able to bring the entire system together (all the tablets, displays, tracking system, etc.).
I asked David about any roadblocks they hit during the Inspector Training Course. To my surprise, he replied that there wasn’t really anything that they couldn’t quickly get around. In the past, b/i had done a lot of show control and interactive storytelling for themed entertainment and live performances before, so they had a nice library of tools they could call upon as well as experience in integrating lots of different components into a single experience. These days, they rarely start from scratch. The biggest challenge they found was scaling all the media playback to work on a tablet (albeit a nice tablet, but certainly not the video servers they are used to running). Lots of playing with codecs and developing some cool tools to help maintain constant frame rates at a high resolution was required. In the end they were humming along at 30fps @ 1080p which was quite lovely (as well as being important for the experience). Outside of Max, the biggest challenge was configuring the tablets and PCs so that no one could mess with them but b/i. They came up with a lot of tricks (through a lot of trial and error) to make sure kids (and staff) couldn’t exit the application and start mucking about.
I asked David to outline the installation flow for the Inspector Training Course. Here's how it looks:
- Focus of the gameplay is on 50 Surface Pro 2 tablets. They run the game fairly autonomously except for some key components/messages from the game server.
- A docent machine is used to check in/out the tablets and add some personalization (such as the guest’s first name).
- A game server. Its main function is to parse and forward along tracking coordinates to each tablet. It also broadcasts messages as needed to all the tablets, writes data to the SQL database (we gather a lot of stats on gameplay on the tablets for each guest that then gets passed to the game server, which then writes the data to a remote SQL server). The game server also coordinated wireless messages for some of the physical challenges that were wirelessly connected to the system.
- A freestanding email server that allowed guests to email inspection checklists to themselves.
- A couple “selfie” stations for kids/families that got high enough scores to become super inspectors (the selfies could also be done on the tablets).
- A video server that drove 9 HD displays. This was the Super Inspectors wall, which included pictures, badges earned, and scores for the participants.
All the CPUs were wired to the local network b/i set up. Tablets and a few of the physical challenges were all wireless, and everything talked to everything else in one form or another.
Here's what the total tech breakdown looked like (Wow!):
50 x Surface Pro 2 tablets (in addition to the touch screen and CPU, we also used both front and rear embedded cameras in gameplay) 1 x HP CPU (docent machine) 2 x intel NUC’s (selfie kiosks) 1 x intel NUC (email station) 1 x custom CPU with a beefy GPU assembled in-house (Used for the Super Inspector Wall) 9 x HD monitors (super inspector wall) 2 x Logitech webcams (selfie stations) 1 x Mac Pro (game server, game metrics, connecting to SQL server) 1 x location tracking system (hub + 13 “antennas”) 50 x trackers (1/tablet) 5 x reference location tags (embedded around the house for use by the tracking system) 1 x Ruckus WiFi network (controller with 2 access points) 1 x Cisco network “smart” switch (for all wired network connections) 1 x battery backup for check-in/out area (docent machine, NUCs, video wall; aka “the truck”) 1 x battery backup for game server & tracking system (aka “the rack”) 1 x Teensy 3.0 microcontroller with ublox wifi radio mounted on custom PCB (thermostat challenge)
Every CPU/tablet ran Max. The two tablets actually ran two Max applications each.
There were many video playback devices that function separately from the gameplay itself and and are not connected to b/i's system (plus they weren’t responsible for those in the LA version of the game "...although they wanted them tied into our system..." says David). There was also a SQL server somewhere on the premises building that they only knew of by its IP address - they never actually saw the hardware (it was provided by the museum and used for many other purposes as well).
The answer to my final question to David was a real shock: When I asked about the fail-safes they had in place for the Inspector Training Course, the answer was a big fat ZERO. Zip. Nada. Nothin'.
David smiled and said, “We’re living on the edge.” The decision to have no fail-safes was largely driven by budget (Welcome to the museum world). However, knowing that in advance, b/i built the system to accommodate as much as they could. 95% of the processing for the experience is on the tablet. That means that if one tablet goes down, there are 49 others - often, a reboot is all is needed. The other systems weren’t doing anything particularly complex, which was intentional. It made them easy to build, and - more importantly - easy to test and debug. The attraction has been running since November of 2014. It's estimated that it has been down a total of an hour - and that was primarily in the beginning!
So there you go - an up close and personal look on the life cycle of a Max project. It was incredibly enlightening, to say the least. I’m very impressed with what David is able to achieve with Max (and I literally see hundreds of Max projects across my desk in any given week). David and b/i certainly prove that you don’t need to be a big company to play big, you just need to know your tools well and use them wisely. (Check out Darwin's interview with David for a closer look at all his work.)