SlimDX DirectX 11 Tutorials

The following tutorials are based on my exploration of Frank Luna's Introduction to 3D Game Programming with Direct3D 11.0, adapting the C++ original code into C#, using SlimDX as a managed wrapper for the DirectX libraries.

The code for all of these examples can be found on my GitHub public repository.

To compile and run the examples, you will need Visual Studio 2012.  I have the Professional edition, but I would imagine that you should be able to use the C# Express edition as well.   You will also need SlimDX, which is also available through NuGet, as well as the DirectX SDK. If you are running Windows 8 or greater, DirectX is now included in the Windows SDK, so you will want to grab that for the most updated version of DirectX.

Some of the examples use Assimp.Net to load 3D models.  You can download this from Google Code.

Learning DirectX 11 via SlimDX

Learning DirectX 11 via SlimDX

DirectX 11 Initialization with SlimDX and C#

DirectX 11 Initialization with SlimDX and C#

A Colored Cube in DirectX 11 and SlimDX

A Colored Cube in DirectX 11 and SlimDX

Hills Demo with SlimDX and C#

Hills Demo with SlimDX and C#

Cylinders, Spheres, and Boxes with Direct3D11 and SlimDX

Cylinders, Spheres, and Boxes with Direct3D11 and SlimDX

Loading a Mesh From a File: Skull Demo

Loading a Mesh From a File: Skull Demo

Dynamic Vertex Buffers: Waves Demo

Dynamic Vertex Buffers: Waves Demo

Lighting, Take 1

Lighting, Take 1

Lit Terrain Demo

Lit Terrain Demo

Three-point Lighting – LitSkull Demo

Three-point Lighting – LitSkull Demo

Texturing 101–Crate Demo

Texturing 101–Crate Demo

Textured Hills Demo

Textured Hills Demo

Using a Texture Atlas for Animation

Using a Texture Atlas for Animation

Blending Theory

Blending Theory

Alpha-Blending Demo

Alpha-Blending Demo

Planar Reflections and Shadows using the Stencil Buffer in SlimDX and Direct3D 11

Planar Reflections and Shadows using the Stencil Buffer in SlimDX and Direct3D 11

Geometry Shader Billboards with SlimDX and DirectX 11

Geometry Shader Billboards with SlimDX and DirectX 11

An FPS Camera in SlimDX

An FPS Camera in SlimDX

Hardware Instancing and Frustum Culling using SlimDX and Direct3D 11

Hardware Instancing and Frustum Culling using SlimDX and Direct3D 11

A Look-At Camera in SlimDX and Direct3D 11

A Look-At Camera in SlimDX and Direct3D 11

Camera Picking in SlimDX and Direct3D 11

Camera Picking in SlimDX and Direct3D 11

Status Update

Status Update

Skyboxes and Environmental Reflections using Cube Maps in Direct3D 11 and SlimDX

Skyboxes and Environmental Reflections using Cube Maps in Direct3D 11 and SlimDX

Dynamic Environmental Reflections in Direct3D 11 and C#

Dynamic Environmental Reflections in Direct3D 11 and C#

Bump and Displacement Mapping with SlimDX and Direct3D 11

Bump and Displacement Mapping with SlimDX and Direct3D 11

Diving into the Tessellation Stages of Direct3D 11

Diving into the Tessellation Stages of Direct3D 11

Dynamic Terrain Rendering with SlimDX and Direct3D 11

Dynamic Terrain Rendering with SlimDX and Direct3D 11

Terrain LOD for DirectX 10 Graphics Cards, using SlimDX and Direct3D 11

Terrain LOD for DirectX 10 Graphics Cards, using SlimDX and Direct3D 11

Drawing a Loading Screen with Direct2D in SlimDX

Drawing a Loading Screen with Direct2D in SlimDX

Generating Random Terrains using Perlin Noise

Generating Random Terrains using Perlin Noise

Loading 3D Models using Assimp.Net and SlimDX

Loading 3D Models using Assimp.Net and SlimDX

Skinned Models in DirectX 11 with SlimDX and Assimp.Net

Skinned Models in DirectX 11 with SlimDX and Assimp.Net

Particle Systems using Stream-Out in DirectX 11 and SlimDX

Particle Systems using Stream-Out in DirectX 11 and SlimDX

Expanding our BasicModel Class

Expanding our BasicModel Class

Shadow Mapping with SlimDX and DirectX 11

Shadow Mapping with SlimDX and DirectX 11

SSAO with SlimDX and DirectX11

SSAO with SlimDX and DirectX11

Rendering Water with Displacement Mapping

Rendering Water with Displacement Mapping

Adding Shadow-mapping and SSAO to the Terrain

Adding Shadow-mapping and SSAO to the Terrain

A Terrain Minimap with SlimDX and DirectX 11

A Terrain Minimap with SlimDX and DirectX 11

Terrain Tile Picking

Terrain Tile Picking

Refactoring Rendering Code out of the Terrain Class

Refactoring Rendering Code out of the Terrain Class

OutOfMemoryException - Eliminating Temporary Allocations with Static Buffers in Effect Wrapper Code

OutOfMemoryException - Eliminating Temporary Allocations with Static Buffers in Effect Wrapper Code

Pathfinding 1: Map Representation and Preprocessing

Pathfinding 1: Map Representation and Preprocessing

Pathfinding II: A* and Heuristics

Pathfinding II: A* and Heuristics

Pathfinding III: Putting it All Together

Pathfinding III: Putting it All Together

Simple Particle Physics

Simple Particle Physics

Rendering Text using SlimDX SpriteTextRenderer

Rendering Text using SlimDX SpriteTextRenderer

C# SDKMesh Loader

C# SDKMesh Loader

HLSL Cookbook: Hemispherical Ambient Lighting

HLSL Cookbook: Hemispherical Ambient Lighting

HLSL Cookbook: Directional Lighting

HLSL Cookbook: Directional Lighting

Geodesic Sphere Tessellation

Geodesic Sphere Tessellation

Model Loading Code Updated to AssimpNet 3.3.1

Model Loading Code Updated to AssimpNet 3.3.1


Bookshelf

I have way too many programming and programming-related books. Here are some of my favorites.