Sunday, December 27, 2009

PRINCE: The Dream Project


Earlier this month I was contacted by a lawyer from Microsoft to provide further details for a patent filed over three years ago.  To some extent, I was a bit annoyed by the process.  I had to find time to take a meeting during business hours for a company that no longer employs me, I spent my free time reviewing drafts of documents in legalese, and when everything was finalized, I had to fax off a signed copy of the full document (instead of just the one page I actually signed).  Looking back, these are minor inconveniences for the chance to work on what was truly a dream project.

Ok, a little about me:  I love video games.  Have for as long as I can remember.  When I was five years old, I knew that I wanted to make video games when I grew up.  It’s what drove me to throw temper tantrums when my parents refused to buy me a video game system for fear of it rotting my brain.  It’s what drove me to learn how to use a computer when my father brought one home from work and told me there was a directory filed with games on it.  It’s what drove me to bring home my best report card when my parents told me they’d relent and buy me a Nintendo Entertainment System if I did well in all of my classes my first semester in a new middle school.  Then lead me to a degree in computer science, then a masters in computer science with a concentration in computer graphics and human computer interaction.  You get the point.

Upon graduation, I was passed over for a position at 3DO, developing High Heat Baseball.  My next best option was to go to Microsoft.  I had an offer to work in MSN.  Ok, so it’s not working on Halo, but with luck, maybe I could work my way into their games division. 

Working in MSN was a great experience.  I learned what it was like to go through a professional development cycle, I found a mentor in DirectX, and I had access to the company store so I could get all Microsoft published games cheap.  In fact, my favorite game from the Xbox/Playstation 2 era, Project Gotham Racing 2, was published by Microsoft Game Studios.  When it came out, I killed my whole extended thanksgiving weekend beating it.  I can remember my roommate and his girlfriend staring in amazement (ok, maybe it was more like pity) as I continued to play while they’d headed to and from their various weekend festivities.  Finally, the project I was working on in MSN came to a conclusion and I felt it would be a good time for me to go job hunting.  As luck would have it I found out about and landed a great position within Microsoft Game Studios as a tools integrator.  Basically, I was a member of a shared technology team responsible for getting the technology to work for different game teams.  First game?  Project Gotham Racing 3!

Finally the Project Gotham Racing series was receiving the love and attention from the media and gamers that I felt it deserved for PGR2.  As a launch title for the Xbox 360, PGR3 was a graphical showcase of what the console could do in stunning high definition 720p.  So much so that the developers felt it worthwhile to include a photo mode where players could pause the game and take pictures of the cars and tracks, applying real world photography effects like adjustable aperture settings and sepia toning.  The only problem was that once you took the picture you could only store it on your 360.  Now what?  What if you want to remind your friends that only have a Playstation 2 how obsolete their console is?  What if you want to show your momma that you did get that gold medal on the Big Apple Loop Cone Challenge?  What, are you going drag them over to your living room every time?? This is where PRINCE comes in.

PRINCE was the code name of a project to upload in game images from PGR3 through Xbox LIVE.  After the initial launch of the game, there was interest in adding this feature for title update schedule several months later.  One of the tools that I used internally during the game’s development had the ability to upload data from the game, so we used that as the basis for the feature.  Though there was a good amount of interest in the feature, there weren’t a lot of resources available for the project.  As such, the project landed on my shoulders. It was my first experience running a project.  Luckily there was a great web development team that agreed to host the images and an ops team that could manage the servers.  I also used a mentee from the test team as my test lead and routinely sought support from members of our engineering team.  The feature officially went live in August of 2006.  After taking a picture in game, players could hit the Y button to upload the image to the PGR3 community site in a gallery tied to your Windows Live Id. 

In addition to creating a cool new feature, we created new technology.  No one had ever created a feature to upload from a video game console to the web.  Which means it is patentable.  Microsoft provided a lawyer for filing the patent.  We had a couple of meetings to describe the project and did numerous rounds of reviews before the application was officially submitted.  As is tradition at Microsoft, our efforts were commemorated with a patent cube. 



Now some 3 years later, we needed to defend some of the claims made in the application.  I guess the stress of my day to day life made this initially seem like a chore.  But it was good to talk with the guys I worked with on the project.  Since I am no longer with the company, I was sent check-in notifications from our code versioning system and emails that I sent.  I was kind of strange to have someone send me an old email from me.  Even in the check-ins, I my comments were exuberant with the excitement of what we were doing. 

What this really reminded me of is how fortunate I have been in my career.  By my mid-twenties I had completed my biggest life objective, to develop a video game.  In doing so, I became a part of one of my favorite franchises and did something that had never been done before.  What I have learned along the path to completing this goal is providing the foundation for the next.  My years in MSN gave me a taste of web development using .Net.  Microsoft Game Studios gave me a chance to work with customers to define and deliver solutions using technology.  A major challenge for me has been to define what’s next.  I think I have the answer. 

Links
Photo Mode Walkthru: http://picasaweb.google.com/MrSharps/PGR3PRINCEPhotoModeSlideShow
PGR3: http://projectgothamracing3.com/default.htm
PGR3 Photo Mode Site:  http://projectgothamracing3.com/photos
PGR3 Photo Mode Competition:  http://www.bizarrecreations.com/article.php?article_id=5215