XNA Game Development
Right now I'm working on teaching myself the Microsoft XNA game development platform and C#. I started out ambitiously working on the game prototype listed first below but about the time I started working on how to do dynamic shadows I realized I should probably spend some time in less complicated applications learning HLSL shader programming before going much further. Thus the other projects below were picked for expanding my knowledge of HLSL and XNA in general.
Click the images for short YouTube videos of the projects in action and be sure to hit YouTube's "HD" button so you can see them in all their glory
Steam Hovercraft Game Prototype My first foray into XNA development was quite ambitious, I aimed to create a game where you navigate a steam powered hovercraft with reasonably accurate physics (given the circumstances) over a dynamically generated island completing tasks and fighting enemies. I got quite far with it, generating the island height maps using combinations of Veronoi maps, simplex noise, perturbation and several iterations of erosion. Those height maps are then rendered with a custom shader that blends 8 textures depending on the height and normal (slope) of a given pixel. As the video demonstrates you can navigate your little ship around the island with “steam” thrusters in the 4 directions.
I'm going back to this project, and probably re-writing quite a lot of it, soon.
Chess Demo Demo of an XNA chess playing program under development. This is my latest work and thus my most accomplished with XNA. It has the latest version of my custom shader and dynamic shadows using the depth map technique. Towards the end of the video I start resetting the board to view some of the other textures.
The games being played are parsed from recorded games in PGN format, the engine can parse well formed PGN games and was ported from a Java project I started a couple of years ago with the intent of "teaching" an AI how to play via recorded games.
Marbles Demo Bouncing marbles with dynamic lighting using the shader from the shader test. This was my second creation with XNA and it was designed around giving my custom shader a workout. There are over 70 different kinds of marbles each with it's own combination of textures, normals, specular mapping and shader settings for reflection, smoothness, etc etc. The physics uses the JigLibX library.
Shader Test This is a little app I put together for testing and debuging my shaders. As the video shows it allows the turning off and on of most effects supported by the shader; normal mapping, directional light, 3 point lights, spectral mapping, reflection, etc. etc.