I spent the last week or so surfing around and looking at various free graphics engines, (thanks gamedev for the nice list in the Alternative Libraries forum) and couldn't seem to quite find anything that sparked my interest. Either using it looked too difficult, it lacked a critical feature, or it didn't seem well supported. Finally, I ran across Flat Red Ball which seemed to really fit the bill. It had all the features I needed, plenty of documentation, still in active developement, had a good community behind it, and most of all, it's in C#.
Friday/Saturday I spent a little bit of time fooling around with the template to see how things work, and read most of the documentation that was available. Today I started putting something together and in a couple hours I made a lot better progress than I expected. I've got a fairly data-driven application that will show a map with some collidable stationary objects, and then add in a configurable ship that the player can control. Best yet, for once it is fairly well architected and not just a shitty-on-the-fly prototype.
The rest of this week:
- Come up with a good collision scheme. FRB provides a lot of collision capabilities but I can't find a great way to encode each objects collision behavior in some form that can be loaded for each map.
- Work on some basic polish issues. Right now you can fly off the map - need to fix that. Also the control scheme needs tweaking, I've got it so that pressing the "up" key for instance makes you accelerate forward, but turning doesn't change your direction of motion. This may be how it would actually work in space, but it makes it hard to control. I need to find a balance between the standard controls and the realistic ones I've got now.
- Implement particles. FRB has some fairly powerful features that let you do a lot with sprites in general, and particle sprites in particular. One thing the game desperately needs is some graphical flair, so I want some cool particles for engines and for weapons, and for anything else I can think of.
One cool idea I've had is for the level backgrounds. I've always been a big fan of cool space pictures, and it turns out Hubble images from NASA are available in super high resolution (6000x6000), and don't seem to have any prohibition on use - the perfect backgrounds for a space game.
The plan going forward is for a couple journal updates every week (hopefully including screenshots from now on) and a demo at the end of every week. (I have to show a demo in the class this is for every week, so why shouldn't I post it as well - or at least a video).