Archive for the ‘Making of’ Category

Mini Making of …

Thursday, August 9th, 2007

I’ve been asked about the making of this game for the DBP contest ; here’s a quick overview of the story.

This is my first experience with XNA and the C# language.
I learn for the contest in March 2007 just before starting my final internship in Paris, and I immediately decided that I had to submit something and as a consequence to build something during my free time (i.e. Late nights and week ends) considering that I was in internships since the beginning of March 2007.
Even if I knew the competition would be tough, I knew this could be a good experience and maybe open a few doors in the industry.

In my university, we mainly use C++ and OpenGL for our projects, even If we are in the MSDN Academic Alliance, so I had only basics knowledge of DirectX and no skills with C#.

Once I’ve decided to participate, I tried to convince a few people to join me, but the short time span we had implied a 100% commitment during our free time (we were all starting our final full-time internships) and, they were not sure to follow me. I was then alone, and I had to find out what I could submit.

Since I’m not an artist but a programmer, and I had very few skills with Max or Maya, I knew that I would be limited in my options, and the timespan (we were at the beginning of April 2007) was short to find an artist on the internet to join me ; we would have to think in meetings, and discuss/agree on everything and that would be time consuming, time that I didn’t have.

Since I love racing games, and I was a super big fan of F-Zero on Super Nintendo, the spaceships of the SpaceWars starter kit remind me this great game I was playing when I was a child ; so I thought I could actually build an XNA F-zero like for the contest ; with all the bonuses like speed booster, tremplin, …

I knew I had to build a graphics engine by myself, as well as a game engine and a collision/physics engine. so I better hurry programming with C# and XNA (we were past mid April 2007) ;
I was skilled in C++ so my drives for learning C# were :

  • “try do what you need like you would in C++, but use as more classes possible …”
  • “C# and XNA are here to ease your life so whenever it get messy, think twice, you might have missed something …”
  • “always search the documentation for C# / XNA solutions before reinventing the wheel …”

I had no skills using Max, but I managed (thanks to the Internet and its tutorials) to build roadblocks for the game.
Then I build the graphics engine that manage viewing distances and LODs, then the ships physics and the collision engine; then I added the shadow mapping by building my system to manage it, I added the post process effects (motion blur, …), and the two player split screen mode.

I wanted to add some lightning effects, and a few more gameplay elements, (bonuses on the road, springboards and speed boosters, more tracks …), but due to a lack of time, I couldn’t :(

We were almost at the end of June 2007 and the game was playable but not ready to be released (a lot of debug display infos were remaining, scores, menus and other visual elements were not ready), and I took the rest of the time to build those elements.
Thank god, the deadline was extended so i could organise some testing/debugging sessions with my friends, and correct the last mistakes…

That’s it for my experience building this game, even if it took all my free time during 3 months ( - I apologize to my mates for that, sorry guys I wasn’t there to have fun those week ends, I know there will be thousand more occasions to have fun ;) -) that was a great experience, C# was very easy to learn, and XNA is really a greatly helpfull library, especially when you’ve been using OpenGL a lot, the time saving that XNA provides you is just … Magical !

Finally, A big thanks to the XNA Team for the samples, and a big thanks to all the various people creating amazing tutorials on the internet, the XNA community have grown so fast, that’s just great !

Congratulations and good luck to all the winners !