Welcome to this website! This started out as a temporary location for my tutorials and projects, which has become quite popular, and as a result, fairly permanent. As long as Wikidot keeps cooperating with me, I'm planning on staying here.
This site is designed as a place to help you get going with game development (or just software development in general) and provides you with tons of free amazing tutorials, software, and resources for you to use.
30 January 2014
I'm announcing today that we are planning a month-long Game Development Competition here on the site! See this category in the forum for the details: http://rbwhitaker.wikidot.com/forum/c-867602/game-development-competition-1-space-invaders.
The competition has a loose "Space Invaders" theme, but you shouldn't feel limited by it. Out of the people who helped get it set up with me, I think at least a couple are planning on doing something else.
I personally am using this as the starting point for my game-from-scratch tutorials, so my pain (hee hee hee) over the next month is your gain!
The whole thing starts on the 7th of February, a little more than a week away. Everyone is invited to join. If you were looking for a kick in the pants to get started working on your own game, this is it!
26 January 2014
I just finished off the tutorials on Mercurial and BitBucket. These tutorials feel a little more unpolished than any tutorials that I've done as of late, so please report any problems or confusing statements to me so I can get it cleaned up.
26 December 2013
I just put together a tutorial and script that walks you through the process of installing XNA in Visual Studio 2013 (and 2012, if you want). You can now use the latest and greatest version of Visual Studio to make XNA games!
20 December 2013
I'll be attempting to do a live video demo/tutorial of version control, Mercurial, and BitBucket tomorrow, 21 Dec 2013, at 17:00 UTC. This thread has all of the details.
Keep in mind that this is the first time I've done this, and who knows if it will actually work.
But… you're invited to come along for the ride!
9 December 2013
The voting page for XNA 5 now has over 9000 votes. We're on final approach for 10000! To my knowledge, there has never been something with that many votes that has been rejected, but also, this is a pretty big request, so take that for what it's worth.
If you haven't already, please take the time to go vote for XNA 5 on Microsoft's User Voice page. Doing so helps show Microsoft how useful and helpful XNA has been to us as indie, hobbyist, and student game developers over the years.
You do not need to create an account, and you can spend three votes at a time. You can vote on all of your devices, so if you've got a smartphone or a secondary tablet or something, you can add a few extra votes as well.
Feel free to actually register (then you get email notifications when they respond) or to leave a comment (comments help the item stay "hot"), but those are just icing on the cake.
Thanks to everyone who has voted so far. I think 9000 votes ought to be pretty convincing. 10000 should be even more so.
2 December 2013
Thanks to everyone who reminded me that my MonoGame tutorial that describes what to download was out of date because of the new Visual Studio 2013. I finally got around to fixing it!
It was a crazy November. Sorry for the delays in responding to emails. I'll post about what was happening soon!
21 November 2013
So I spent a little time the other day building a little mockup/prototype of what most of the pages on this site could look like some day, and I want your feedback on it: prototype.
This has a number of notable features:
- Breadcrumb navigation at the top and bottom. This should make navigating the website much better.
- Tabular main content page.
- Content: Includes the tutorial content.
- Comments: Where the comments/discussion on the tutorial will live.
- Troubleshooting: A place where common problems can be addressed individually. (Note, this means the traditional troubleshooting links that most people have will go away. That would also imply the high potential loss of all comments so far, but I'll do what I can to salvage them.)
- Resources: Some pages will have resources (project/source files, content) that can be downloaded. Tutorials that don't, won't have this tab.
- Quiz: Some tutorials (the more the better) will have a quiz that you can take before or after to see if you understand the material.
- Challenges: Some tutorials (the more the better) will have additional hands-on coding challenges that you can do to solidify what you're learning.
14 November 2013
I've begun the process of updating the visual appearance of my site. The biggest motivation for this is the fact that I want to change from white text on a black background to black text on a white background. (Or replace "white" with "light" and "black" with "dark".)
I had initially planned on doing this "big bang" style, by building a completely new style and deploying it at at once. There are some technical limitations to this and some time limitations to this. I don't really have massive blocks of time to dedicate to building and tweaking CSS.
Instead of that, I'm going to do it step-by-step, and refactor the appearance instead of trash and rewrite. That means that you'll see the site's appearance evolving over time. Obviously, some changes are going to be very clear and obvious, while others are more subtle.
I'm hoping to finish this up within the next 30 days, by the middle of December. (That's an estimate though, not a commitment.)
I'm always open to suggestions about what to change, and feedback on the current state and the trend/direction that the changes are heading in. I don't consider myself a graphic designer, so I don't want to make these changes in a vacuum.
If you see something out of place or broken (like white text on a white background) or even just something that strikes you as ugly, don't hesitate to tell me. You can comment on my User Voice page, or email me directly. I'd rather have you bring it up and have me say, "Yeah, I'm working on it," or "Yeah, 7 other people have already said that," rather than have a problem persist for months or years because I never noticed it.
In other news, the XNA 5 proposal on Microsoft's User Voice page is now approaching 5000 votes! We've picked up about 1700 votes in the last month alone, so that should give you an estimate of the velocity at which we're picking up votes. It's more than any other proposal over there. If this is your first time hearing about this, please go vote for it. Enough votes will almost force Microsoft to reconsider their plans.
1 October 2013
I just saw that we now have over 2500 votes for XNA 5, on Microsoft's User Voice page! The only item there that is outpacing XNA 5 is the suggestion for allowing .NET games on the Xbox One, which is… well… almost the same request. (But not quite.)
Please keep the votes coming. You don't need to create an account, and you can give three votes on all of the computers and devices you own. In fact, tell all of your friends about it too. There is a noticeable uptick in the total vote count whenever the little "Facebook likes" count moves up.
(Please read some of my earlier posts below for why I'm supporting this proposal if you're not quite convinced.)
30 September 2013
Sorry guys. I've been sick the last few days. I know I owe a number of people some emails, and I know I need to check back in on the Breakout clone community project that's going on. Give me a few days to get back on top of things…
4 September 2013
I've finally got my monogame-getting-started-tutorials Getting Started with MonoGame tutorials all converted to Visual Studio! That's great news for a lot of people who have been asking for it, in some cases for months. MonoGame 3.0.1 made the process significantly simpler (thank goodness) but it is still far more complex than XNA ever was.
I'm just kind of spewing out my thoughts right now, but doing this has reminded me (for the hundredth time) how much better XNA is than MonoGame. I'm a big fan of all of the platforms you can target with MonoGame, but that's about where it ends. I really wish Microsoft would just figure it out and put out XNA 5. I just… unfortunately… don't trust MonoGame to carry the torch. (They're not "using statements", people! They're "using directives". "Using statements" are a different thing entirely!) But I guess on the other hand, I'd rather have them carry the torch than nobody, so…
The XNA 5 suggestion on Microsoft's User Voice page is doing pretty well. I've been satisfied with the momentum it has been seeing. It's approaching 1000 votes, which is a significant mark to me. Out of the hundreds of ideas that Microsoft ultimately rejected, only seven of them had over 1000 votes. If Microsoft is going to retire XNA, I want to make a statement in the process. (Perhaps with them getting a new CEO, all options are back on the table.)
If you haven't already done so, please show your support for XNA by voting on the XNA 5 suggestion over there. You can add three votes, so if you don't have anything else to spend your votes on, use them up there. And also keep in mind that as long as you don't sign in, every device you own (laptop, tablet, phone, desktop, sister's laptop, etc.) gets its own set of votes too. Like I said in my previous update, it's quite possible it will get rejected, but I want them to have to do so in spite of the community support for it.
24 August 2013
I know at this point you might be getting tired of hearing me talk about User Voice. So I'll keep things short.
1. It's been a ton of fun to see you guys come over to my User Voice page and vote on ideas. It's really interesting to see what you guys think I should work on next! Keep the suggestions coming in!
2. The .NET Framework on the Xbox One proposal on Microsoft's User Voice page is now the #1 idea they have (that hasn't been implemented or rejected already)! That's awesome news! But don't stop voting for it, just because it's #1. Keep the votes coming in to show them how important it is to us!
3. You should also go vote for this proposal: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3725445-xna-5. Microsoft has promised good tools for indie game developers, which probably includes you if you're here. But they've said in the past that that's probably not going to come in the form of XNA. There's a bit of a push for people to do more with C++ and DirectX, but nobody is happy about that. Fortunately, we have things like MonoGame and SharpDX, plus some fairly well put together game engines like Unity. However, from all of the discussions and interactions that I've ever seen, nothing is quite like XNA. I've actually seen Microsoft shut down some XNA related proposals in the past, but I am still throwing my support behind this one. I'm asking you to vote for this feature as well. Regardless of what happens, putting your support behind this idea will show Microsoft that it needs to pay careful attention to us as indie, hobbyist, and student game developers.
21 August 2013
I often get suggestions for ways to improve this website. This is often in the form of suggestions for new tutorials, but there are a lot of other great ideas that I get as well. I've always taken careful care to write these down and remember them, but I knew I always wanted something better than just that. I always envisioned a system where people could add their own suggestions directly to the list, and everyone could vote on ideas that they like. I always thought I'd have to build that system myself, until I ran into User Voice. Once I fully grasped what User Voice could do for me, I immediately signed up and created an account.
Today, I'm announcing the arrival of a new feedback system for this website through User Voice! If you have suggestions for me and this site, come on over and check it out! You can vote on ideas that you like, add ideas and suggestions, and leave comments on any of the ideas. And all without needing to create an account. It's insanely simple and easy to use. (If you create an account, then you'll get emails as I respond to the different ideas, which is a nice bonus.)
As always, if you have suggestions that you don't think will be a good fit for my new User Voice site, or if you have other questions or anything else like that, please don't hesitate to send me an email, or send me a message on Twitter.
I'm excited to hear your ideas!
15 August 2013
Well then. That's a relief. I just got a side-project wrapped up. (It was reviewing a MonoGame book, but don't get excited because it had a lot of issues, and probably won't get published in the end.) My mind is a bit more free again, and I can concentrate on the other 87 ideas that I have!
More news and updates soon.
29 July 2013
Just another quick update on the .NET Framework Games on the Xbox One thing. It's been increasing slowly over the last few days, slowly getting enough votes to reach page 1. For some reason, today it has suddenly taken off. (Perhaps because it got to the first page.) It's now sitting at #15, with over 1400 votes. If you haven't already voted for this feature, you really should. (http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/4233646-allow-net-games-on-xbox-one).
I seriously think they were already planning on this, but the facts are, they have not actually said that they were going to. So I think it is worth making sure they know we expect it.
Having the .NET Framework on the Xbox One means people like you and me (indie developers, hobbyist developers, and students) can actually make games for it. If we've got it, there will be lots of options for making awesome games on that platform, which is something that I think we'd all really like to see!
26 July 2013
I know I haven't posted updates here for a little while (more on that soon).
Last night, I bumped into a request on User Voice to Microsoft to include the .NET Framework on the upcoming Xbox One. I presume that they already were planning on this, though I don't see any immediate evidence supporting or rejecting this idea.
So to be safe, please go and add your votes to the request here: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/4233646-allow-net-games-on-xbox-one. It will be tough for us indie/hobbyist/student game developers to get games on the Xbox One without it, and with it, we'll open up lots of interesting possibilities.
(You don't need an account to add your votes, and you can put three votes on each item, and repeat the process if you have multiple machines.)
It's currently #41 out of all Visual Studio items, but let's see if we can get it onto the first page!
UPDATE: It now has 1000 votes, and is #26. It's also now the "hottest" item on their list, which I suppose is a function of votes weighted by how recent they are. This is great progress! (Another 172 votes to make it to the first page!)
It's good to see so much developer support for this request, but I should say that if Microsoft responds with anything short of, "Yeah, that was the plan all along," then I'm going to be pretty disappointed in them.
9 May 2013
I checked my stats for my book sales for April. There was a significantly higher total for the month than any other month (and a gradual upward trend overall). Thank you to everyone who purchased my book!
I looks like as of yesterday, Amazon was actually giving a 10% discount on the book, out of their share. (Which is good, because their share is bigger than my share.) I haven't checked today, but if you're thinking about buying my book any time soon, it might be worth checking it out. Maybe you can save yourself a few bucks.
15 April 2013
Lest you start thinking this site is dead, I wanted to write a quick update here. This site is far from dead. I'm still actively working on it, and plan to do a whole lot more tutorials, especially in regards to getting the rest of the MonoGame tutorials up and running.
If you're having problems, and you ask questions in the forum or on the various troubleshooting pages, I've still been doing my best to answer those.
In the mean time, what's been filling up most of my spare time is the game that I'm making (and writing about the experience of making a game).
21 February 2013
It is time for you to go read this: The Future. A lot of good and a lot of bad wrapped up there. It's long. Do me a favor and take the time to read it all, when you get the chance. Then let me know what you think. Then keep calm and carry on.
19 February 2013
I've converted many more tutorials to MonoGame over the last few weeks. It should be enough to get you going, considering that the biggest two differences between them is the installation process and the content pipeline (or lack thereof), both of which are covered in the tutorials that have already been converted.
Additionally, you should check out the new navigation in the C# Crash Course! I'd like to get people's feedback on what works and what doesn't work about it, but this feature is something that I'll be rolling out to all of the tutorials eventually.
3 February 2013
I have begun the process of porting my tutorials over to MonoGame. MonoGame is an open source implementation of XNA. (More on the motivation for this later. Please check back soon.) Much of the stuff is the same, but not all of it. So while it will take quite a while to port them all over, for the tutorials that haven't been ported, you'll always have the option of jumping back to the XNA tutorials and seeing how it's done there.
At some point, I also will want to outline the key differences that I find between the two, because while they're supposed to be clones, there's definitely some differences.
30 January 2013
I don't know how many of you are interested in 3D modeling, and I don't how many of you are active users of Stack Overflow or other Stack Exchange sites. But if you're interested in both, then you should take a look at this proposal for 3D Graphics:
I think it would be a great place for rookie/hobbyist 3D modelers like me (and maybe you) to ask questions to experts (also maybe you) an improve our knowledge and skills.
The problem is, the proposal has come along only very slowly. At the rate that it's going, it will take forever to get out of the Proposal stage, and even less likely to survive the public beta.
Go check it out, and if it's something you're interested in, be sure to follow the proposal.
11 January 2013
I just wanted to put out a quick update today, before the weekend got busy. I've received quite a few emails over the holidays, and I'm way behind on answering them all. I'm hoping to get some time to do so, but forgive me if it's a little delayed. I promise I'm still planning on getting to them.
13 December 2012
I just got done tying up a bunch of loose ends with my C# book. This time, for real, if you helped me with my C# book and you didn't get the reward you were promised, please let me know so that I can get it straightened out.
Also, in response to a question somebody posted here, I created another new tutorial about how to extract pixel color data from a Texture2D: Extracting Color Data. It's in the advanced tutorials for the time being.
27 October 2012
No, I didn't disappear. I'm still here! Things have been kind of odd the last little while though, making it hard to get stuff done on this site. It's a long story, I'll spare you the details. It's not all that interesting anyway.
I've made a number of small changes, thanks to people sending me emails with questions, or reporting problems, so thanks guys for doing that. Your feedback always helps me make this site better.
In the mean time, what I've been working on is trying to get an eBook version of my book, in some form or another, available to all of the people who are asking about it. I had planned on the eBook being a piece of cake to do, but it turned out to be tough on a number of levels, and Amazon totally tricked me. :) Those are details I'm actually really interested in sharing with you, but not until I'm done with the eBook version, which should be fairly soon at this point. (I hope, I hope, I hope.)
22 September 2012
My C# book is finally available! This book will help you learn C# from the ground up. It doesn't assume you know anything about programming, but it will still be a good choice if you're a skilled programmer who is moving into C#. Note that this book is not about XNA specifically, just C#. You can consider it an evolution to my C# Crash Course. It contains much, much more than the tutorials do, and is better organized and cleaner. (Though I do plan to go back and clean up some things in the C# Crash Course to match.)
Note that I currently am offering a 20% discount if you order through CreateSpace, which is the printer for the book. The code to get this discount is K438N97R.
As always, if you notice any problems with anything (the purchasing process, the content of the book, etc.) please let me know about them so I can get them fixed for you.
If you helped in reviewing/editing the book, remember I promised you some rewards, and they're coming. If you don't get an email from me within the next 24 hours (let's say by the beginning of the 24th of September, regardless of what time zone you're in) please, please email me and let me know. It's possible I may have forgotten about you, or your name didn't get on the list.
17 September 2012
It's here! Three new tutorials, to wrap up the discussion of the game loop and timing in an XNA game! These tutorials cover the GameTime class in depth, how to configure your game to use fixed or variable time steps, and how to deal with a tricky bug in GameTime (that happens to actually not be a bug). All of these tutorials are currently listed under the advanced XNA tutorials, but I think eventually I'm going to pull them out into a new Game Architecture category.
10 September 2012
What I had originally intended to be a set of 2, maybe 3, tutorials on timing in games has expanded to 4! As you saw yesterday, I wrote #1 already. And now, I'm done with the next! But… I wrote #3 first, not #2. So I'm going to wait before posting it. When #2 gets finished, you'll get #3 for free with it. I don't know exactly when that will be, but probably sometime over the next couple of days.
9 September 2012
I just finished up a tutorial about the game loop, which is a design pattern used by nearly every video game to drive the game forward. XNA provides an implementation of the game loop, so you don't need to make it yourself. This tutorial will help you understand why and how the game loop helps organize and structure your game.
This is really only the beginning of a much larger push…. As most of you are probably aware, I'm in the beginning stages of making a set of tutorials that build a game from scratch. Start to finish. Along with that, though, there are a handful of tutorials that I'll need to write to lay the groundwork for that tutorial set. This is the first of those, and part of a set of three tutorials about fine tuning your game loop's waiting stage. So expect a couple of other tutorials very soon (as in over the next day or two) as follow ups to this one.
Lastly, as many of you are aware of, I was just about done with my book a month ago. I went out of town for a week with the intention of launching my book the day I got home. But the day before I got home, Visual Studio 2012, C# 5.0, and .NET 4.5 were all released, making my book obsolete before I could even get it out there. Fortunately, these new things only added/changed a handful of things, and I was able to update my book to include these changes. I suppose on the bright side, that means the market is now a bit thinner, since everyone else is needing to do the same things as me.
Anyway, once again, I'm just about there.
8 August 2012
I've got the final version of my C# book sitting here in my hands, and it's just about ready to go. I just need to do a little more work on the website, and get final approval from the printer, and the book will be available!
Once that's off my plate (I seriously wouldn't have even started on it had I known how big of a project it was going to end up being) I'm going to dive into the tutorial set on making a complete game from scratch. So that's literally just a few days away now!
9 July 2012
In preparation for the game-from-scratch tutorial set, I'd love to have your feedback and know what kind of game you guys think would be a good choice for basing the tutorial set on. If you have ideas, email me or post something in the forum.
8 July 2012
I got a lot done on my C# book today, and wrapped up looking at the edits that some of you suggested. I still need to make a few more passes myself, until I'm satisfied with it, but it's getting close.
7 July 2012
Sorry for the delay to anyone who has sent me emails over the last couple of weeks. It's been a very odd last little while. I came down with a nasty cold or flu that put me out of commission for a little while, and then my wife has been running into some strange medical problems as well. Fortunately, everything is getting better, and I'm getting back on track now, so I should get to your emails soon. I missed some work that I'm catching up for this weekend, so it may still be a few days.
I'm surprised how many emails I'm still getting about my book, so let me address that. I'm basically done with the reviewing part. I'm really just trying to finish up a few loose ends. I don't really need any more readers at this point, but if you really really really want to, I can probably get you a few sections to take a look at. This is especially the case if you're willing to read some of the later chapters that didn't get looked at as much.
I'm really almost done with the book, and in fact, I would be, had I not had so many problems the last couple of weeks.
19 June 2012
The book's coming along still… slowly but steadily.
In completely unrelated news, I just posted some directions for how to send me (or anyone else) your game, if you want me/them to take a look at it.