title img
The reward is Ice Cream!

Last few days have been dedicated to XNA development.  Since attention at WPT shifted to game development both Chad and I have been busy designing a game.  It's easy to get carried away and keep adding exciting new things and we really need to restrain ourselves as E3 is just a few months away and we have a lot of work.  To that end I've been developing out most of the base code using XNA in C#.  Honestly, I believe the platform is simple to use and that also happens to be a flaw.

While C# and Java are all nice and well I'm used to writing embedded systems or OS or graphics code at lower levels.  I like managing memory and I find destructors to be a clean way to do it.  With C# you have to implement the IDisposable interface everywhere to get rid of those unmanaged items and in the end you're writing complex code that would've been less complex had we just gone unmanaged.  Sure people will complain "but I don't want to have to worry about cleaning up an array or a list or…" to which I reply "auto_ptr" or "auto_array" (the second one you have to implement on your own, check for auto_ptr).  That's just crufty old me though.

All in all I got things up and running quite quickly and that's a testament to the XNA team.  They have worked hard and it shows in how quickly I was able to get a 1080p backbuffer going while rendering to an arbitrarily sized window/screen, get an audio manager running, and a basic game engine.  Of course things are still glitchy (I hesitate to say buggy as there's different classes of problems) and that's expected with any new system.

Now that phase 1 is complete, I believe I can move onto getting that level engine up and running as well as some level script parsing.  Mundane (parsing) mixed with exciting (engine)!  I think I deserve some ice cream.