About this time last year I decided to set a goal for myself and my efforts of helping out the XNA Community. This is how “12 month, 12 samples” was born. The beginning was great, but after some time, other time-consuming stuff came along, and I couldn’t make it every month. So here’s a tally for the past year.
|For January, I had a 2D Pie Drawing sample. It simply shows how to render a 2D Pie in XNA, and customize stuff such as tessellation, radius, angle, and so on. I actually got to use it in real-life for my DreamBuildPlay 2009 entry, for the user-interface.|
For February, I wanted to draw some debug lines in some experiments of mine, and the flickering caused by rendering the wireframes over the models was annoying. So I went ahead and searched for a way to draw Wireframes without Z-Fighting.
|March was a blast. When I started doing the Lightning Sample, I wasn’t sure what I was going to get out of it, but the end result was very satisfying. Whenever I get to write a 2D game, I hope I’ll have the opportunity to actually use this code.|
|Considering my game ideas and prototypes are almost never 2D, I’m still surprised I decided to make this sample. The truth is, the internet is full of examples on how to do shadows in 3D, and very few on how to do the same thing in 2D. I was remembering the days playing Nox when the idea of doing Dynamic 2D Shadows came to me. So I found an article on GameDev, and did my best to implement it in XNA. The result was the April sample.|
|One of the annoying problems with my Deferred Rendering tutorial was that the contents of the depth buffer were lost after using the technique. To alleviate this, I wrote my May sample, which dealt with Restoring the Depth Buffer from a texture.|
|XNA Game Studio 3.0 CTP was launched in May, and one of the major things it brought was support for Zune. After finding out my small 8GB flash Zune was overall better than my first PC, on which I played Outcast, I thought about trying to use the voxel technology used in that gorgeous game to render landscapes on the Zune. The result (released in June) was less then satisfying, mostly because of my poor implementation of voxels, which used floats. But at least I tried…|
|In July, I was interested in experimenting with “cute” looks for 3D graphics, which lead me to write the Rim Lighting sample. This was also when I got used to using the Content Pipeline as often as possible, because it helped me keep the game code cleaner. In the same month, I also wrote a Fur Rendering tutorial for Ziggyware.|
|August was the first month without a sample. After my wonderful trip to Tunisia, I began working hard on my DBP entry, so I didn’t manage to do any new sample.|
|September was also marked by the Dream Build Play competition and no sample got made.|
|In October a friend talked to me about using XNA for background effects during some presentations. This is how the Powerpoint in XNA sample came to life. At first I had to export the ppt slides into image files, but then I did it all using a Content Pipeline Extension to have more exercise.|
|For November, I wrote an article for Ziggyware’s Article contest, and also asked you to consider it my November Sample. It deals with Multi-threading in XNA.|
|December was marked by many things, including holidays, school projects, and research work for school. So, sadly, there was no sample.|
Looking back, even though I did not reach my goal of releasing 12 interesting samples this year, I am satisfied with the results.
This year is going to be a very busy one for me. It’s my last year at the Technical University of Cluj-Napoca, and then I’ll need to start looking for a job 🙂
So because I would feel bad about promising another 12 samples, and not being able to fulfill my promises, some things on this site will change. Don’t worry, it will still be related to XNA, and I’ll still release samples when I have the time and possibility to create them, but they won’t be monthly. I’ll come back with more details in a few days 🙂
I hope you enjoyed the ride, and that my samples helped some people with their XNA programming.