XNA Essentials

Game Programming for Xbox 360, PC + Windows Phone


Will there be an XNA Game Studio 4.0 Unleashed book?

I just got back from the SIEGE conference.  Actually, the conference is still going strong, and the first official day of the conference is today, Friday, October 5, 2012.  However, SIEGE put on a Windows 8 Hackathon sponsored by Microsoft.

I was asked to speak at this Hackathon and work with Glen Gordon to provide training for Windows 8 and work with folks who wanted to participate in creating a game in a 28 hour period.  It was a good time.

While I was at the event, I received an email thanking me for the content on the site and asked if I was going to update the book or if they should just use the 3.0 book to learn some of the topics discussed like HLSL.  This post is an answer to that email.


At this point there are no plans to update the XNA book.  The majority of the content is still appropriate but there were major breaking changes in the API between XNA 3.0 to XNA 4.0.


The code in the book used Visual Studio 2008, but XNA 4 requires Visual Studio 2010.  Visual Studio 2012 is currently available but it doesn’t support XNA 4.0.

There was a workshop that was started a while back and it went through the first few chapters of the book.  This can be found at:


Since then, the source for the book itself has been released as open source.

There is a very helpful cheat sheet available to help upgrading from 3.0 to 4.0:


So, if you are still just learning XNA and want to use the book, I'd actually suggest starting out with Visual Studio 2008 and working through the book just as it is.  Then once you are done, you can go through the process of upgrading the bits you are most interested in by using Visual Studio 2010 and XNA 4.  That route will provide the least amount of headache, but does take the extra step at the end.

However, if you have some things under your belt and don't mind redoing the code as you go along by using the cheat sheet, then you can just get Visual Studio 2010 and the source code and work through the cheat sheet.

My original plan was to update the book when XNA 5 would be released, but it doesn't appear that a new version will be released.  There are no plans to create a XNA Game Studio 4.0 Unleashed book.


I’ve been spending my time creating a book to teach app and game development for Windows 8.  For folks that want to use XNA in Windows 8, make sure to check out MonoGame.


Happy Coding!


XNA Game Studio 3.0 Unleashed Source Code Released as Open Source

I’m pleased to announce that the XNA Game Studio 3.0 Unleashed book’s source code has been released under the Ms-PL license on CodePlex.

So you can use Git and create a clone locally to start working with it or you can fork it and update it for XNA 4.0.

Have fun with it!


Getting Started with XNA Game Studio 3 Hands On Lab

This is a lab I originally created for the Carolina Code Camp. The lab covers two main items:

Platformer Starter Kit

  • Creating the Platformer Starter Kit
  • Compiling and Running Platformer
  • Modifying Level 1

Indeterminate Progress Bar

  • XNA Framework 2D Basics
  • Creating an Indeterminate Progress Bar Demo
  • Drawing 2D Text


The lab is adapted from my Microsoft XNA Game Studio 3.0 Unleashed book.

Download the lab and give it try. It takes about an hour to complete.

Happy Programming!


The Kewlniss Func

Michael Neel (aka @ViNull) interviewed me at the Raleigh Code Camp back in September for his Feel The Func podcast. He edited a little bit, but it is still almost 2 hours in length.

If you are interested in listening to us chat about the game he is making, my book, the XNA Community in general some games we play as well as some XNA topics such as Rich Presence feel free to listen.  I’m sure he’d love you to subscribe.

Also, a much better interview is the one he did with Jame Silva of The Dishwasher: Dead Samurai fame. So make sure to check his interview out too.

Happy Listening!


Microsoft MVP Awarded July 1st

I’m pretty late to be announcing this. I can’t believe it has already been two months since I’ve received the award, but on July 1st, 2009 I received the Microsoft MVP Award in the area of XNA/DirectX.

MVP_Horizontal_FullColorI’m honored to have been awarded this. The main reason why someone is given the MVP award (less than 5,000 world wide currently have this award) is because of the work they do in their community.

Speaking in User Groups and Code Camps are the types of things that help someone get the award. Helping out with the local user group is a big plus. Even doing things like making sure the venue facilities are returned back to the way the group found them can be helpful. Finding a good place to meet monthly is challenging. The last thing the group wants to do is lose their facility. My local .NET User Group currently meets at Advanced Home Care, which is a great location. We meet the first Tuesday of every month. We will be meeting tonight, September 1st at 6:00PM. If you are near Greensboro definitely drop by. The great thing about User Groups and Code Camps is that they are absolutely FREE to attend. Yes, the folks that give their time to run the user groups and organize the code camps find sponsors who pay for the food, swag and everything else that goes into putting on these events.

Besides being active in my local user group and speaking there, I’ve spoken at a few other places including Burton Center for Arts & Technology near my hometown of Roanoke, VA. I gave three lectures one day to some middle schoolers and some high schoolers. It was an enjoyable day and the students seemed to enjoy the fact that games could be written for the Xbox 360 console.

Several years ago, I spent a lot of time in SecondLife. I created a few games in there and used to sell them. There is a .NET User Group in SecondLife where I’ve gave an XNA talk earlier this year.

While the PDC event was taking place last year, Chris Love, Rachel Appel  (who are both MVPs themselves) and a few others started up NotAtPDC. I was able to give an XNA talk using LiveMeeting. Giving talks online is definitely challenging because you can’t see the audience. You have no idea if you are connecting with them or not. Either way, I’ve enjoyed both and will probably do these types of events again.

Since you are on this site, you most likely know I’ve written a book on XNA game programming using XNA Game Studio. This also played a big part in me getting the MVP award I’m sure. There are some that think getting the award because you wrote a book is cheating because you already got compensated for the book. Typically (and my book is no exception) technical books do not bring the authors much money. But it can be argued that any money is still compensation and community work has no monetary rewards. Some don’t see any difference in putting time into a book that helps others, versus time into a website with Ads. Sometimes ads have made more money for folks than royalties from a technical book. Others tend to think that if work was done and you can be awarded for it multiple times then more power to you. That said, having the book alone wouldn’t have been enough. In fact, this was my second book. So having two books alone wouldn’t have been enough to be awarded with the MVP Award. It was the activity with the local user group and code camps and the speaking engagements.

On a side note, I found out last week that a college professor of mine (who taught several of my Computer Science courses including Graphics Programming) is using my Microsoft XNA Game Studio 3.0 Unleashed book this year for that class. There are other colleges and universities that use my book in different courses, but to have your old college professor use your book to teach a class he taught you is pretty surreal.

So here is the call to action for you my dear readers – yes both of you – you need to get plugged into some community activity. A great way to become a better developer is to surround yourself with better developers. A good way to do that is to attend user groups and code camps. Of course the other events like PDC, Mix, GDC and GameFest are good too – but there is usually travel costs plus the actual event cost which can make it prohibitive for some. With user groups and code camps which are free for the attendees there is no reason not to get out there and meet other developers and learn new things.

Happy Networking and Learning!


Microsoft XNA Game Studio 3.0 Unleashed Source Code Available

The publisher is allowing the entire contents on the CD that are included in the book to be purchased. This option is available to people who that purchased the Kindle version of the book. For Safari subscribers, the code can be downloaded via Safari. The code can be found on the downloads page.


Microsoft XNA Game Studio 3.0 Unleashed Book Has Arrived

My second book, Microsoft XNA Game Studio 3.0 Unleashed has just left the printers. I received a copy of the book yesterday. It is available for purchase from Amazon and other retailers. This book includes 9 new chapters in 3 new sections. These include chapters on creating games for the Zune, creating multiplayer games and best practices to sell games on the Xbox LIVE Marketplace.

More information about the book can be found in the Unleashed section of the site. The errata for the book has been started and can be found here.

I will be revamping this site and will include forums directly on this site so we do not have to use the Amazon forums. I realized recently that the Amazon forums were country dependant and there were posts I didn't see from the UK. Having the forums on my server should help with that. I'm working diligently to get them up soon.

Happy Coding!


New Tutorial: Storing and Retreiving High Scores

A new tutorial was just added to the site.  It is a section from Chapter 21 in the book.  It shows how to create, load and save a high score list on disk.  It works on the Xbox 360 and on Windows.  It has also been added to the XNAWikiNick Gravelyn started up the site and hopefully it will contain a lot of good content in the coming months.

Happy Coding!


Microsoft XNA Game Studio 3.0 Unleashed

I am in talks with the publisher about the upcoming book Microsoft XNA Game Studio 3.0 Unleashed.  The original Microsoft XNA Unleashed book which covered XNA Game Studio Express has been successful and has received many good reviews and has been recommended on the XNA forums many times.  Of course, with a technical editor like Shawn Hargreaves, it is to be expected.

Since there is only a year between XNA Game Studio 2.0 and XNA Game Studio 3.0 we decided to not create a 2.0 specific book.  I was going to create 4 new chapters for networking, but those will just be added to the 3.0 book.  Since the decision was made to not update the book to 2.0, I upgraded the code included in the book to 2.0 and released it yesterday.

Besides networking chapters, the new 3.0 book will also include information on creating 2D games for the Zune.  It will include features that are specific to that hardware device as well.  The book will also include information on distributing games on the Xbox 360 through the Xbox LIVE Community Games service.

All of the items that made the first book a success will be included: Performance Considerations, Physics, AI, Game State Management, Particle Systems, 2D Demos, 2D Parallax Side Scroller Game, 3D Demos, Extending the Content Pipeline (including the new parameters introduced in 2.0), and a complete 3D game.

There is a lot of information coming, so if you have bought the original book and are looking to learn some of the topics mentioned above it may be worth getting it now.  Otherwise, just sit tight and the 3.0 book should be released shortly after Microsoft releases the product (around Holiday 2008).  So it could be as early as a couple weeks after the launch, but could be a long as two months after the launch.  We can all hope for the former.

As always, if there are any questions with the current Microsoft XNA Unleashed book, please ask a question in the book's forum on amazon.com.

Happy Coding!