On writing games with XNA

Hey, before I head over to the Iron Architect final: have you tried out the XNA Game Studio Express yet? Sure its a beta 2 but don’t let that frighten you. XNA is actually a new .NET platform for writing games, based on DirectX and the .NET Compact Framework. Rob Miles from the University of Hull, UK, gave an inspiring and humorous talk on XNA in the educational space and also how to get started with XNA. His “Hot Salad Death with Cheese” demo was so kewl, just wait till he makes it available for download Big Smile

The thing with XNA is that it gives us a very clean, managed way of writing games, with all the tools and coziness of the .NET and Visual Studio world. XNA works on both Windows Vista and the XBox 360 which to me makes the framework even cooler. XNA also put a lot of focus on componentization…err, making components out of features in your game… for instance, why re-create a starfield backdrop in all your space shooters when you can create the StarfieldBackdrop component once and then re-use it in all your shooters. Re-use should be a good thing for the game industry. “Hey, my starfield is not going to look the same in all my shooters!” you might say, and yes you’re hopefully right. But still, it will be easier to take that isolated component and improve it instead of having to rip out all those lines of code intertwined in the vast amount of code that makes up your game. Right?

…more on this, too, later… now over to see some great architecture!


Last day at TechEd…going home

After a truly intense week filled with cool tech, good company and too much chocolate covered donuts I am going for the hands-on lab to put some stuff to work. Today will also the winner of the Iron Architect contest be announced …looking forward to see the solutions people have come up with.

This week didn’t become the week of many posts I thought it would be. Well, the posts are in my head, I just need some time to sort ’em all and make some decent blogs out of it. So stay tuned, TechEd may be over soon but the stuff covered here this week is here to stay.

…man, that was cheesy.


More on NetCF performance

Andy mentioned today some things to consider that I didn’t know about. When considering load time of mobile applications here’s a couple of things to keep in mind:

  • The runtime validates the EXE by doing a hash. Each 1MB will therefore effectively add seconds to load time. Reducing the exe file size is thus a good thing.
  • So how to reduce exe file size? IL doesnt add much to the footprint but embedded resources does. So keep them bitmaps in separate files will ya.
  • Also, strong naming the exe forces the runtime to do additional validation without giving you a lot of security payback. Strong name only DLLs going into the GAC. 

And yes, those bitmaps I mentioned? Load them behind the scenes, off the main thread, e.g. using ThreadPool.QueueUserWorkItem


On NetCF 2.0…

Version 2 have been out for a while and now the first service pack is out. One key enhancment is the Remote Performance Monitor tool which enable us to view live perf counters on your device. Counters will also be added in PerfMon …there is also a .stat file viewer in there.

More on that later, blogging on a PSP is not an ergonomic experience 😉