What is XNA?

XNA is an API (Application programming interface) that uses and simplifies DirectX and many other features common to game programming. Many routine tasks in programming are left to XNA in order to let the programmer focus on the game development itself, rather than mundane tasks. A fun little 2D game that would take me 5 hours in XNA might take me 10 in C++/DirectX.

What do you need to program in XNA?

- Windows XP SP2 or Windows Vista
- DirectX 9.0c compatible video card required, Shader 2.0 or newer highly recommended, Shader 1.1 minimum.
- Visual C# 2005 Express Edition (free download)
- XNA Game Studio Express 1.0 Refresh (also free download)
- Knowledge of or willingness to learn C#, and I would recommend knowledge of 3D math, including vectors, matrices, and quaternions if you plan on making more than just a simple 3D demo. Not a whole lot of math knowledge is required for a 2D game.
- The drive and passion to make video games!

Most of my lessons focus on helping programmers optimize or add to their existing knowledge, there are plenty of tutorials out there to get you started for the first time. In fact, I've created a 3D game template that will help get you rolling with XNA and 3D if you'd like (it's at the bottom of the samples page). Have fun, and email me if there are any errors, bug, questions or comments.

XNA Lesson 7 -- Difficulty: Moderate

September 27th, 2007 -- Heightmap Terrain Smoothing

For full lesson click here....

XNA Lesson 6 -- Difficulty: Easy-Moderate

September 12th, 2007 -- Setting up a simple fixed 3D camera

For full lesson click here....

XNA Mini-Lesson -- Difficulty: Easy

July 14th, 2007 -- Determining 3D Field of View by position

For full lesson click here....

XNA Lesson 4 -- Difficulty: Easy - Moderate

July 12th, 2007 -- Game Entity management, a lesson in Inheritance and Abstraction (OOP)

For full lesson click here....

XNA Lesson 3 -- Difficulty: Easy - Moderate

June 28th, 2007 -- Simple 3D Physics with XNA

For full lesson click here....

XNA Lesson 2 -- Difficulty: Easy - Moderate

June 28th, 2007 -- Ray tracing with XNA

For full lesson click here....

XNA Lesson 1 -- Difficulty: Moderate

June 20th, 2007 -- View frustum culling and other optimizations

For full lesson click here....

General Programming Lesson 1 -- Difficulty: Easy-Moderate

June 22nd, 2007 - Math optimizations

For full lesson click here....