1.25.2007

Mindblossom Magic



click here to watch a brief movie about our latest work

In late October 2006, I joined Mindblossom ( www.mindblossom.com ) as their new director of interactive media. We've been very busy lately producing highly interactive, cinematic experiences that entertain and track user activity. Here are a few of my favourite projects that we launched over the year.

LANCER EARTH



We recently launched Lancer Earth for Mitsubishi which showcases the latest 2008 Lancer (entirely done in 3D video) driving through Japan, Germany, Canada, USA, and Africa.

Check it out this award-winning (FWA) site: www.lancerearth.ca



For the flash developers out there, you will be interested to hear how we made extensive use of bitmap data to take pictures from the 3D video and combine them with our own innovative green screen technique to create seamless transitions between the scenes at any time.



Try clicking through the scenes quickly and notice how we snap screen shots to use on the billboards or in the cell phone. You can also take photos during the bullet time sequences which will show up in the Global Post gallery.

DAKAR RALLY GAME


www.gofar.ca

Based on the classic Choose-Your-Own-Adventure novels, this interactive movie challenges you to race from Lisbon, Portugal to Dakar, Senegal.



There are 7 legs and 3 special stages. At the beginning of each leg, the driver can pimp out their ride. If they customize their car according to the elements presented in the intro story, they will receive a bonus at the end. Each leg also features a mini game! We had a lot fun creating the final mini game biting the "pipe dreams" game mechanics.



Along the way, racers have the opportunity to win a "karma coin" which they use automatically to save themselves from a fatal third damage triangle. And if the manage to keep the karma coin til the end, they receive an addition time bonus.




Unfortunately, this game suffered from losing its original architect a week before it was supposed to launch. I had just joined Mindblossom, and had to take over development with the project already late. Our team had to gell quickly, and we ended up delivering this game within three weeks basically using the RAD philosophy that 80% of software can be completed in 20% of the time. I'm pretty happy with the end result, but with more time, we have accomplished more of our ambitious plans on elements like the map such as adding filtering, and animating the racers to give it a greater sense of competition. I was only able to do a little clustering which is far too basic and hardly interactive.

SIRIUS MIXER

www.siriusmix.ca



With 110 channels, Sirius Canada needed a way for people to quickly sample them. You could listen to the short samples individually, but its a lot of fun to "mash up your mix" by throwing 5 radically different samples together.



This was pretty much the perfect project from start to finish. We had enough time to design and develop everything we wanted. My only concern during development was finding someone to develop the "Download an MP3" functionality we had promised. We had miscommunication between our business and Flash department as Flash itself cannot take multiple mp3 and create 1 one -- it can only create the illusion of this by saving variables during the user session and then replaying that session.



I turned to my friend, Tim Spurway [ currently an Architect at www.informiam.com ], to develop the server-side mixdown service -- he then turned it around for us over the course of a weekend!!!

In his own words, he:
- implmented in java as a web service running in Apache Tomcat application server
- uses the LAME library for encoding MP3s (which is written in C)
- uses the Tritonus library for it's audio buffers - this is where we do the mixing of the tracks. I actually had to write the mixing (pan and level) at the individual sample level (floating point calculations). This is the library that i extended - I ported the software to OSX, as well as built a mixer class to do the multitrack mixdown calculations
- the other thing about the mixer is how it handles concurrency.
There is a configurable number of audio buffers kept in a pool, and these are re-used for multiple users. If you have 8 buffers in the pool, then 8 users can concurrently mix audio (ie. use the server), while others are queued until a buffer becomes available. This scheme allows you to balance load expectations with memory usage on the server.