Direct3D10 - microsoft/DirectX-SDK-Samples GitHub Wiki
Direct3D 10 Samples
These samples all require the legacy D3DX10 and D3DCompiler_43 components provided by the Microsoft.DXSDK.D3DX NuGet package. For more information on the package, see this blog post. Some of these samples also use the Effects for Direct3D 10 (FX10) library which is provided 'inbox' with Windows, but has been since deprecated.
10BitScanout10 (August 2009)
This sample produces a linear gray scale test pattern in both 8 and 10 bit color and displays it on multiple monitors to enable direct comparison.
AdvancedParticles (November 2007)
This is one of 3 sample applications shown during the Advanced Real-Time Rendering in 3D Graphics and Games course at SIGGraph 2007. The Direct3D 10 sample shows a particle system that interacts with its environment. The system is managed entirely by the GPU.
BasicHLSL10 (December 2005)
This Direct3D 10 sample shows a simple example of the High-Level Shader Language (HLSL) using the effect interface. This sample also includes a Direct3D 9 fallback
ContentStreaming (August 2007)
The ContentStreaming sample demonstrates streaming content in the background for applications that need to display more data than can fit in video or system ram at any given time. This sample supports both Direct3D 9 and Direct3D 10.
CubeMapGS (December 2005)
This Direct3D 10 sample shows an example of rendering to all 6 faces of a cube map in one pass.
DDSWithoutD3DX (August 2009)
DDS texture loading without using the D3DX helper functions.
Includes the fixes from this blog post. It is strongly recommended you make use of Direct3D 11 and DDSTextureLoader.
DeferredParticles (August 2008)
This sample shows how to create more volumetric-looking particles using a deferred rendering approach.
DepthOfField10.1 (August 2008)
This Direct3D 10.1 sample, courtesy of AMD, shows how to use depth of field with MSAA on Direct3D 10.1 hardware.
DrawPredicated (December 2005)
This Direct3D 10 sample shows the use of predicated Direct3D 10 calls to avoid drawing occluded geometry.
EffectPools (April 2007)
One of the downsides to using multiple effects in a single application is that many effect variables need to be set for each effect. It is often the case that many of these variables are common between effects. Without a method for sharing variables or shaders between effects, many rendundant set calls will need to be made setting data that is exactly the same for each effect. Effect pools are meant to solve this problem. This sample demonstrates the use of effect pools on Direct3D 9 and Direct3D 10.
EmptyProject10 (December 2005)
Minimal starting point for new Direct3D 10 applications. This sample also includes a Direct3D 9 fallback
FixedFuncEMU (December 2005)
This Direct3D 10 sample shows how to implement Direct3D 9 level fixed-function functionality in Direct3D 10
GPUBoids (November 2007)
This is one of 3 sample applications shown during the Advanced Real-Time Rendering in 3D Graphics and Games course at SIGGraph 2007. The Direct3D 10 sample shows a flocking algorithm managed entirely by the GPU.
GPUSpectrogram (December 2005)
This Direct3D 10 sample shows the creation of a spectrogram from a wav file using the GPU.
HDAO10.1 (August 2009)
This sample, contributed by AMD, presents an innovative technique for achieving High Definition Ambient Occlusion (HDAO). It utilizes Direct3D 10.1 APIs and hardware, making use of the new shader model 4.1 gather4 instruction, to greatly accelerate the performance of this technique.
HDRFormats10 (February 2006)
High dynamic range lighting effects require the ability to work with color values beyond the 0 to 255 range, usually by storing high range color data in textures. Floating point texture formats are the natural choice for HDR applications, but they may not be available on all target systems. This Direct3D 10 sample shows how high dynamic range data can be encoded into integer formats for compatibility across a wide range of devices. This sample also includes a Direct3D 9 fallback.
HLSLWithoutFX10 (December 2005)
This Direct3D 10 sample shows a simple example of the High-Level Shader Language (HLSL) without using the effect interface.
Instancing10 (December 2005)
This Direct3D 10 sample shows an example of using instancing to render a complex scene using few draw calls.
MeshFromOBJ10 (November 2008)
This sample shows how an ID3DX10Mesh object can be created from mesh data stored in a Wavefront Object file (.obj). This sample is an adaption of the Direct3D 9 sample MeshFromOBJ, which demonstrates best practices when porting to Direct3D 10 from Direct3D 9. The sample code has been constructed to facilitate side by side comparisons between versions to assist with learning.
MotionBlur10 (February 2006)
This Direct3D 10 sample demonstrates using a combination of fin extrusion in the geometry shader and anisotropic texture filtering to create the illusion of motion blur.
MultiMon10 (February 2007)
This sample shows how to handle multiple monitors in Direct3D 10.
MultiStreamRender (April 2006)
Multi-Stream rendering for Direct3D10 and Direct3D9 codepaths
NBodyGravity (November 2007)
This is one of 3 sample applications shown during the Advanced Real-Time Rendering in 3D Graphics and Games course at SIGGraph 2007. The Direct3D 10 sample shows N-Body particles system managed entirely by the GPU.
ParticlesGS (December 2005)
This Direct3D 10 sample shows a particles system managed entirely by the GPU.
Pick10 (September 2008)
This samples illustrates picking using Direct3D 10.
PipesGS (December 2005)
This Direct3D 10 sample shows how to use the geometry shader to create new geometry on the fly.
ProceduralMaterials (March 2008)
This Direct3D 10 sample shows various procedural materials created through shaders.
RaycastTerrain (August 2008)
This sample shows how to render terrain using cone-step mapping in the pixel shader.
ShadowVolume10 (December 2005)
This Direct3D 10 sample shows how to implement shadow volume using the Geometry Shader. This sample also includes a Direct3D 9 fallback
SimpleSample10 (December 2005)
Basic starting point for new Direct3D 10 samples. This sample also includes a Direct3D 9 fallback
Skinning10 (August 2006)
The Skinning10 sample demonstrates 4 different methods of indexing bone transformation matrices for GPU skinning. In addition, it demonstrates how stream out without a Geometry Shader can be used to cut down vertex processing cost when skinned model will used for mutiple rendering passes.
SoftParticles (June 2006)
This Direct3D 10 sample eliminates artifacts commonly seen when 2D particles intersect 3D geometry by reading the depth buffer and clipping particles against it smoothly. On a Direct3D 10.1 card, it also shows how to do the same technique against an MSAA enabled depth buffer.
SparseMorphTargets (December 2005)
This Direct3D 10 sample shows facial animation using sparse morph targets, wrinkle maps, and LDPRT lighting.
SubD10 (March 2008)
This Direct3D 10 sample demonstrates Charles Loop's and Scott Schaefer's Approximate Catmull-Clark subdivision surface technique running on D3D10 hardware.
TransparencyAA10.1 (August 2009)
This sample, contributed by AMD, presents a technique for achieving MSAA quality rendering for primitives that require transparency. It utilizes Direct3D 10.1 APIs and hardware to make use of the new fixed MSAA sample patterns, and the export of the coverage mask from the pixel shader.