New Hobby: Game Programming With XNA 3.0
I’ve wanted to tinker around with creating videogames for years. I’ve been a “gamer” for most of my life. We had an Atari 2600 when I was very young because my dad thought it was cool. The Nintendo Entertainment System was the first games system that I could really call my own and I’ve owned just about every system released since then. I’ve built my own MAME joystick layout (that’ll be coming in a future post) but I’ve never been able to break into the creation realm. The price for entry was just too high. The level of programming knowledge, or the tools necessary were always a little out of reach for the amount of time and effort I had to spare. However, with Microsoft’s XNA offering the whole prospect seems to finally be within reach.
For those that might be unfamiliar with XNA, it’s a development framework supplied by Microsoft that allows for development to Windows, the Xbox360 and the Zune. It simplifies the development process by handling a lot of the “under-the-hood” for you and allowing you to really focus on the act of designing a game. There’s also a growing community around the product that’s very active http://creators.xna.com/en-US/. Sample projects are all over the Internet that will help a new programmer get the hang of things. A number of people have also developed targeted class libraries that solve all manner of problems that first-time developers will run into as they try to make their first game.
My goal is to track my progress designing and implementing my first game. The project I’ve decided on is an extremely simple archery game that will work on the Zune. The major caveat of this project is that I have rather limited programming experience so I’ll be learning to program at the same time. I took two entry level programming classes in college (a fair number of years ago now) so I understand a lot of the concepts of object oriented programming, however my day-to-day exposure to programming is limited to writing T-SQL scripts. Some concepts translate from a basic scripting language but it’s still a very different world. Since XNA is built on C# I’m using this opportunity to both learn to design a game and increase my programming skills. My hope is that not only will this whole process fullfil a long time desire to design my own game but that the programming skills I’ll be learning will help in my professional development.
If you’re at all curious about trying XNA, all of the tools are freely available from Microsoft. You’ll need either a version of Visual Studio 2008 (not free) or Visual C# Express (free) and the XNA Game Studio 3.0, both can be found on the XNA Creators Club website http://creators.xna.com/en-US/downloads. I’ll be posting again once I’ve got the first part of my game put together.
Wish me luck.