Wednesday, 23 June 2010

Three-dee

OK, so I wanted to do all the graphics in 3D using (surprise, surprise) a cel shader to eliminate the need for texture work.

However, for any good 3D robot game you need animated models. And, it turns out, this is quite tough. It seems that XNA actually doesn't have any built in animation support. While the content pipeline can access the bone and animation data in models, it just doesn't. So, what to do.

Well, you can override the content pipeline for models by creating a new content handler for animated models. It loads in the animation and skeleton data and saves it in the model's Tag attribute, for access later. It's then not too tough to animate models.

Also, it turns out that there is a handy example by the Microsoft peeps of how to do exactly that, so I stole it.

Unfortunately, there is then the problem of separating frames into animations. The Maya plugin doesn't do this, for some annoying reason, so I've written a tool which allows you to composite animated model files into one model with several animations.

Nifty!

Now, on to some real programming!

Stooooory

Well, sort of. You play a military drone on the originally named planet Robonia. In the middle of national Robonia day, the planet is attacked by the evil robots of Robotika. As a military drone you rally your group of crack robotic troops and battle your way through the evil Robotikan hordes to enable the planetary defences and drive off the invaders.

I never said it was going to be original. In fact, I'm pretty sure I said the opposite. So deal with it.

Oh look, ANOTHER project...

Ok, so I'm kinda bored and I thought to myself "Hey, why not make a game?" Now those of you who know me might ask the following:

Why design a whole new game when you've got this huge other project to work on?

Well, there are a number of reasons. First, I need the practice. I've actually been mucking about with animated 3D models and it was more than I bargained for (more on that later). Secondly, I like the whole process of designing something and creating it all by myself. I know, it's probably more work than necessary, but it's fun dammit! Third... well, actually that's about it.

Anyway, I decided to make what is essentially going to be a re-make of the first level of Buck Rogers: Countdown to Doomsday, but with robots instead of people. Sounds fun, eh?