In each release of our SDK you will find hundreds of code samples, effects, whitepapers, and more to help you take advantage of the latest  technology from NVIDIA.  Check out our SDK Home Page to download the complete SDK, or browse  through individual code samples below. You can also click on the video links for a quick preview, or the thumbnail images for a gallery of larger images. 
		This code is released free of charge for use in derivative works, whether academic, commercial, or personal. (Full License)
              
		
		
			
			   
			   | 
			
			
			   Percentage-Closer Soft Shadows    
			   
			  This technique generates soft shadows with penumbrae that harden on contact, giving useful and realistic visual cues. Based on shadow mapping and percentage-closer filtering, percentage-closer soft shadows (PCSS) generate high-quality soft shadows with just a single shadow map, without any pre-processing, post-processing, or other modification to the host application. The only required change is to replace the typical shadow mapping pixel shader with a PCSS shader. This effect requires FX Composer 1.8 or higher. | 
			    | 
			    | 
			    | 
			
			
			  Shadow
 
 
  
			  
			   
			   
			  Whitepaper 
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   gooch_shadow    
			   
			  gooch_shadow Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   dilation    
			   
			  dilation Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   softStencilShadow    
			   
			  softStencilShadow Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   stencilShadow    
			   
			  stencilShadow implements vertex-shader shadow-volume extrusion and shows how to set up simple stencil shadowing in FX Composer | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   goochSlicer    
			   
			  goochSlicer Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   psych_bg    
			   
			  psych_bg Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   bleach_bypass    
			   
			  bleach_bypass Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   cmykBloom    
			   
			  cmykBloom Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   drainBamage    
			   
			  drainBamage Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   duskHolga    
			   
			  duskHolga Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   lineDraw    
			   
			  lineDraw Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   optical_distort1    
			   
			  optical_distort1 Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   titleOverlay    
			   
			  titleOverlay Project | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   shadowPoint    
			   
			  point-light shadowing | 
			    | 
			    | 
			    | 
			
			
			  Shadow
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   BRDFpaint    
			   
			  paint_brdf lets an artist work directly on BRDF
	lookup tables using a brush -- and while seeing the live results of
	the newly-created BRDF on any model, while they design it. Use the
	pulldown on/off flags to determine which part of the BRDF to paint,
	and then watch the results on-screen and in the textures panel.
	Just save the textures as DDS files for final use. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   anaglyphic_stereo    
			   
			  Anaglyphic stereo view of a tree model -- use red/blue 3D glasses | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   badPrinting    
			   
			  Any image (including your 3D scene), altered to appear as if it was badly printed in CMYK  out-of-register and twisted offset plates | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   uvDetective    
			   
			  Shows uvDetective on a very simple model. Try it on any model of your own. UVDetective is a debugging/development shader that displays multiple useful facts about the UV coordinates on a model, and importantly shows the model's UV derivatives -- that is, how much stretching the UV's have in any part of the model. It also can display different exture MIP levels as varying colors. Finally and importantly, it has "TexRes" modes (techniques) that determine best texture resolutions based on a user-specified choice. For example, if the user specifies "256" then the display will show black where that resolution would be optimal, based on the current model and display size. Areas where a higher resolution could be used will be blue, while areas that could accept a lower resolution will be yellow | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Grisaille (.fx shader)    
			   
			  A plastic-like shader with "flatness"  by scaling the surface normals
    		relative to the eye position, the appearance of an object can be flattened, much like
		a low-relief carving in stone. Untextured, the flat gray appearance recalls "grisaille"
		drawing and sculptural detailing. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   metalReflShip    
			   
			  metalReflShip shows the classic "bigship" model in a reflective environment | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   bumpGloss    
			   
			  bumpGloss shows a typical bumpy glossy material | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   lambSkinDusk    
			   
			  lambSkinDusk shows a cheap, fast way to emulate subsurface light scattering effects. The overall image is further enhanced by a sepia-tone pass | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   durerDusk    
			   
			  durerDusk shows a non-photo-real shading effect, designed to emulate a style of cross-hatched two-layer pen drawing | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   duskWood    
			   
			  The "duskWood" FXComposer sample shows Dusk's head shaded by a classic "wood" procedure, then the image further processed by an animated "old TV" image shader | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   glassUFO    
			   
			  glassUFO shows a reflective and refractive model. the background is generated by shader that can look at cube maps in arbitrary directions | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paintBrush    
			   
			  paint_brush provides simple soft-edged painting
    		in FX Composer. Just draw with the mouse! FX Composer
		has only simple mouse handling, but using time dynamics
		and GPU-based texturing, many paint-program effects
		are easily implemented. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paintLiquid    
			   
			  paint_liquid is a tool similar to Photoshop's
	    "liquify" command. Read any texture from disk, and then
	    "paint" over it with the mouse  the underlying image
	    can be freely distorted and warped in real time. This
	    shader works best with GPUs that can support 16-bit floating
	    point render targets, but will function on some older GPUs
	    also  the distortion effect comes from painting an
	    unseen extra texture, which is then used to perform a
	    "dependant texture read" on the main input image. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   MrWiggleDot    
			   
			  The "MrWiggleDot" FXComposer sample combines Vertex Animation and a "halftone" imaging shader | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   blendLayers    
			   
			  The "blendLayers' FXComposer sample shows typical material effects, plus imaging "blend modes" (much like those found in programs like Adobe Photoshop™), encapsulated as pixel shaders | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   glowTrailFP    
			   
			  glowTrailFP two simple models with image process sweetening. Be sure to hit the "play" button.
	These objects leave persistent but fading images behind as the scene moves.
    	The uses persistent render-to-texture
	for animated effect. Each frame is rendered to a texture, 
	blurred and saved from
	frame-to-frame. Each frame, the previous blur is faded slightly
	before being added to the new scene. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   vbombEdge    
			   
			  vbombEdge shows a combination of vertex animation and high-performace image processing effects | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   fpShadow    
			   
			  fpShadow displays a simple object with a floating-point texture used for shadowing. The HLSL RenderPort functionality is used to assign appropriate transforms | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   mandelbrotPS3    
			   
			  mandelbrotPS3 is a numerically-demanding example of pixel shader dynamic branching. Change the # of iterations at run time for varying precision effects | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   raytrace    
			   
			  The "raytrace" FXComposer sample is a classic spheres-and-plannes raytracer, running entirely in real time in the pixel shader | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   tonemap    
			   
			  tonemap shows high-dynamic-range imaging effects by permitting the user to control the exposure and look of a "deep pixel" image | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   spinFX    
			   
			  spinFX shows accumulation-buffer motion blur.
	By default a SINGLE motion-blurred frame is drawn.
	Uncomment the USE_TIMER macro and recompile to enable animation. 
	Accumulation buffer effects are created by rendering the same object
	repeatedly, and accumulating the resultant pixels into a deep
	(FP16) "accumulation buffer." This is therefore a render-to-texture
	effect. For each subsequent re-rendering, the objects and/or camera
	are moved or changed slightly. Once the accumulation passes are
	complete, the resultant floating-point pixels are re-averaged into
	a viewable and nicely-blurred picture. Controls in the shader
	determine the balance between render speed (a small number of samples)
	and blur quality (a large number of samples). | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   perf_tutor    
			   
			  perf_tutor is described in the FX Composer user guide -- a simple project designed to help you explore some of FX Composer's performance analysis tools (Be sure to accept a local copy of the perf_tutor.fx when you load this project, so that it's freely-editable as you work with this one!). | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_spot    
			   
			  A 2D effect that applies a "spotlight" to the entire frame using frame-buffer alpha blending, and then layers it with the "sepia" toning shader.. "post_spot"ontains simple spot and bumpy techniques, while "sepia" allows arbitrary color toning and/or desaturation of any color image. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   shadowSpot2    
			   
			  Spotlight with the cone angle defined by the shadow projection. Fast and flexible | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   oneCycleSkin    
			   
			  "oneCycleSkin" combines a photographically-based texture of a single fingertip and the "painted sphere" technique to quickly get a lifelike appearance at a high fill rate | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   ToksvigAA    
			   
			  ToksvigAA shows how to use texturing inside a BRDF,
	so that the anti-aliasing inherent in the texture engine can be used
	for arbitrary surface calculations. In this specific case, the
	specular highlight function is pre-calculated, and its values
	placed in a table (as a texture). The calculation is done by CPU-side
	HLSL code, just once before rendering begins. The values in this
	lookup table are then read as texture inputs by the BRDF. Since
	the complete shading function is pre-calculated, rather than just
	a portion, the texture antialiasing covers the entire high-freuqency
	highlight -- typical bump- or normal-mapping schemes would only
	antialias one or two terms of the specular function, which would
	still be high-frequency and would exhibit aliasing. Both AA and
	non-AA versions of the specular function are provided in the shader,
	as alternative techniques that can be easily compared in the shaded
	display. | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			  Whitepaper 
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   grisaille    
			   
			  From Siggraph 2004 - "grisaille" shading permits a simple numeric "flattening" of the overall shading, similar to engraved stone grisaille | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   dusk_gloom    
			   
			  "dusk_gloom" shows tricks you can try yourself, combining image layers by using the "ScriptExecute Sorter" subwindow of the FXComposer Materials pane. The complete effect is created by combining "post_bloom" with two copies of "post_negative": negative->bloom->negative to create "gloom" from the "bloom." | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   fluid    
			   
			  "fluid" is an image-processing effect. Be sure to "splash" using the mouse! | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   relief_maps    
			   
			  "relief_maps" is a sample from our skilled friend Fabio Policarpo. It uses "relief mapping," an alternative to the usual bump or normal mapping. Not only does relief mapping disturb the surface normals, but also creates realistic geometric displacments in the shading -- and even casts shadows from those displacements. | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   displace_maps    
			   
			  Another great sample project from Fabio Policarpo. This sample uses textre-encoded displacement vectors to create the perspective illusion of displacement mapping without actually altering geometry | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   hwShadowMap    
			   
			  "hwShadowMap" enables NVIDIA's built-in HW support
	for shadow-mapping from D24S8 depth textures (format "D24S8_SHADOWMAP")
	 this shadow mappng is faster than using floating-point surfaces
	and comes with built-in shadow filtering for top-notch results. The
	view frustum and render-to-texture tasks are maganed by macros from
	the header file "shadow_map.fxh" and bind automatically to the scene
	lamp. Setting the shader and setting the "Textures" source display to
	"scene" allows you to see the view from the shadow rendering pass,
	specified by a DXSAS "RenderPort." | 
			    | 
			    | 
			    | 
			
			
			  Shadow
 
 
  
			  
			   
			   
			  Whitepaper 
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   sharpRims    
			   
			  A combination of effects: gradient preprocessing from a dynamically-geneated texture; rim-lit plastic showing subsurface scattering emulation and complex-surface highlight edge effects; an overall unsharp masking effect applied to the entire rendered frame | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   shadow_fp_pcf    
			   
			  shadow_fp_pcf uses a floating-point frame buffer as a shadow map to delive the highest-quality shadow, based on percentage-closer filtering (PCF). Instead of using NVIDIA's built-in PCF function, this effect performs PCF in the pixel shader itself, using shader model 3.0 looping to permit a much larger number of samples and a softer-looking result. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_blur    
			   
			  paint_blur is a nv4x-class demo of floating
	    point buffers and indirect texture access. The mouse allows
	    you to "liquify" an image in real time, but in this case the
	    "liquified" image is blurred against the original image via
	    an accumulation buffer, creating the complete paint-on motion
	    blur effect | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_HDR    
			   
			  paint_HDR is much like a regular simple paint
	program, but the pixels it uses are based on 16-bit floating-point
	values. This makes it perfect for touching-up HDR files etc. This
	paint shader has two controls to manage brightness  one for the
	brightness of the brush (which can even be negative) and one
	for the brightness of the overall image exposure or "white level."
	Bright brush strokes may appear white, but ajusting the
	exposure can reveal their true colors. Thanks to the
	developer/artist at NVIDIA's GPU Jackpot who asked for this shader
	 making it from the existing paint_brush shader took less than
	an hour, right there at the event! | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   shadowOverlay    
			   
			  shadowOverlay shows a simple hack to add overlaid shadows to a scene regardless of how it was actually shaded -- mostly to show just how important shadowing is, even to a completely "unlit" model | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   DebugCab    
			   
			  Geometry from NVIDIA's "Time Machine" truck, showing a variety of vertex values and scene coordinate systems encoded as colors and patterns. See the descriptions of the "SeeValues" and "SeeSpaces" HLSL shaders for more details | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   nightfall    
			   
			  Using textures as lighting values | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   chain    
			   
			  A simple industrial chain with two shaders,
	both featuring a cube reflection map. The metal chain links 
	themselves use the fast and simple "metalRefl" shader and are
	tinted to look like common hardened steel. The chain cover, a
	flexible plastic tube, uses "BumpGlossed," which incorporates
	a bumpmap (the pattern gives the simple model complex bending,
	more like a flexible tube) and a fresnel-attenuated reflectivity
	(more like real plastic surfaces). | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   corona    
			   
			  Animated noisy glow effects around each object,
	"Corona" is an animated extension of "post_halo" and "post_glowTrail"
	with the simple addition of noise. Objects are rendered into a
	texture, that texture swizzled and blurred, noise used to repeatedly
	offset the texels, and over several frames each new frame is tinted,
	faded, and moved by noise to a new location for a fire-like effect
	around the edges of each object. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   alien_gooch    
			   
			  Animated "goochy" alien showing an animated NVB file generated by 3DStudio Max | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   3DPaint    
			   
			  3DPaint on a teapot  functions on GeForce FX,
	    but works even better using blendable FP16 textures on GeForce 6
	    and higher. Requirement: the input 3D model must have valid,
	    non-overlaping texture coordinates. The technique works by
	    comparing the object's UV coordiates to the corrent paintbrush
	    position.
	    Be sure to be aware of the "Paint Now" toggle that turns active
	    painting on and off. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   displace2    
			   
			  Show vertex-shader texture fetch for displaced surface. Changing the tesselation paramters of the cylinder will alter the effeciveness of this technique, depending on the texture chosen. Remember that the texture must be in 32-bit-fp format | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   fireball    
			   
			  volume-texture fireball | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   fire    
			   
			  Animated layered fire, based on Yury Uralsky's
	"Volumetric Fire" post on  Cg
	Shaders.Org.
	The shader revolves a cross section of a flame image around the
	Y axis to produce a cylindrical volume, and then perturbs the
	texture coordinates with 4 octaves of animated 3D procedural
	noise to produce the flame effect. This simpling is displayed
	on multiple parallel transparent camera-facing
	planes. | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   hemisphere_lighting    
			   
			  hemisphere_lighting project from Microsoft | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   ocean    
			   
			  ocean waves | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   PointAimShadow    
			   
			  In this example, the shadow map from one lamp is aimed automatically at the second "dummy" point light (which doesn't provide illumination, we only use its location as an aim point). An advantage of this method is that the overall size of the show texels, relative to the object, will remain relatively constant regardless of where the light may move. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   selfAlign    
			   
			  Sprites that always face the camera, aimed by the vertex shader without CPU intervention | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_tiles    
			   
			  image processing trick | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_mandelbrot    
			   
			  scene_mandelbrot shows a mandelbrot set computed in Shader Model 2. Compare to the SM3 version! | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   thinFilm    
			   
			  Colored highlights create the illusion of a thin lastic or oily film on any surface. Pixel-shaded on GeForce FX and higher. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   subsurface1    
			   
			  Texture-based subsurface scattering emulation.
	In this effect, render-to-texture is used to store a depth image
	from the ivantage point of the light source #151; that is, a shadow
	map. The map is stored in one channel an floating-point image, while
	another channel stores the fresnel attentuation (realtive to the
	light) of each surface point. For the final render, each visible
	point is compared to the shadow depth. If the point is farther from
	the light than the stored shadow depth, it is considered shadowed
	 but rather than just losing all illumination, the illumination
	is attentuate by distance through the object, to simulate
	light tunneling through a translucent medium. The stored fresnel
	term is also sampled, so that light striking at grazing angles, which
	would in nature be reflected-away, is not inadertently included in this
	material-diffusion effect. | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   sharedShadows    
			   
			  Using a single shadow map for multiple lights | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Wire    
			   
			  Using textured anti-aliased lines, create an object-space Wireframe on any object | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_raytrace (.fx shader)    
			   
			  An actual raytracer witten in HLSL | 
			    | 
			    | 
			    | 
			
			
			  Environment
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_MandelbrotPS3 (.fx shader)    
			   
			  Mandelbrot Set in a ps_3 pixel shader | 
			    | 
			    | 
			    | 
			
			
			  Fractal
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_edgeOverlayPS3 (.fx shader)    
			   
			  Edge detection overlayed on scene 
    	handy with "toon" shading | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   PointShadowAim (.fx shader)    
			   
			  PointShadowAim uses shadow maps created along an
	"aim point"  one light is the shadw source, while
	another (which contributes no illumination) is used to as an aim
	point. The shadow-camera projection will always center on the aim
	point, and is guaranteed to enclose a spherical volume around the
	aim point as defined by the radius parameter. The light itself
	can then be moved around freely, far or near, and the shadow will
	aways be well-formed and with roughly the same number of texels. | 
			    | 
			    | 
			    | 
			
			
			  Shadow
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   shadRPort (.fx shader)    
			   
			  shadRPort uses a floating point texture as a shadow map. The
	shadow camera is aligned using built-in DXSAS annotations and semantics. | 
			    | 
			    | 
			    | 
			
			
			  Shadow
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   tonemap (.fx shader)    
			   
			  Tonemap adjusts a high-range picture to appear on 8bit displays | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   FacingTexturePS3 (.fx shader)    
			   
			  A simple demo of the new SM3 "Facing"
	register -- note how the texture is flipped on both sides of a surface
	in this demo, so that it always remains quot;straight" | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_brush (.fx shader)    
			   
			  paint_brush provides simple soft-edged painting
    		in FX Composer. Just draw with the mouse! FX Composer
		has only simple mouse handling, but using time dynamics
		and GPU-based texturing, many paint-program effects
		are easily implemented. | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_TexBrush (.fx shader)    
			   
			  Use the mouse to paint, and use any input file
	texture as a brush shape.  Simple dynamics are also handled by the
	TIME semantic. Rotation jitter is hanled not by the CPU, but by a
	vertex-shader noise function running on the GPU | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_3D (.fx shader)    
			   
			  paint_3D lets you paint directly on a geometric
	surface in FX Composer. Read in any model with valid texture
	coordinates, and paint using the mouse. The result texture will
	appear in the texture display (and can be saved). Be careful of
	resizing the scene window  it will clear your painting. | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_sculpt (.fx shader)    
			   
			  paint_sculpt uses the new features of PS_3_0
	    and VS_3_0 to allow you to interactively sculpt geometry
	    in a paint-like application. paint_sculpt paints on any
	    3D surface with valid texture coordinates, and then the result
	    of your painting actions are read back into that object
	    via vertex texture fetch. The values then are applied to
	    the surface geometry to permit you to freely sculpt any painted
	    displacement you like in real time. | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_liquid (.fx shader)    
			   
			  paint_liquid is a tool similar to Photoshop's
	    "liquify" command. Read any texture from disk, and then
	    "paint" over it with the mouse  the underlying image
	    can be freely distorted and warped in real time. This
	    shader works best with GPUs that can support 16-bit floating
	    point render targets, but will function on some older GPUs
	    also  the distortion effect comes from painting an
	    unseen extra texture, which is then used to perform a
	    "dependant texture read" on the main input image. | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   paint_ripple (.fx shader)    
			   
			  paint_ripple is similar to paint_liquid in that
	    unseen image displacements are painted, but the displacement 
	    image is also used for 3D lighting effects, creating a
	    "ripple glass" effect, | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_mouseDot (.fx shader)    
			   
			  Click-here demo | 
			    | 
			    | 
			    | 
			
			
			  Paint
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_TV (.fx shader)    
			   
			  The "TV" post-processing effect 
	draws any scene through an animated "old TV"
	screen effect, driven by the scene clock. The elements of this TV
	effect include contrast and color changes, a flickering "overbrite"
	effect, and scrolling "scan lines" based on a sine
	function. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_alphaGlow (.fx shader)    
			   
			  Create a bg glow based on the object alpha | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_annoy (.fx shader)    
			   
			  Jerk picture around. Mess with mouse | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_bloom (.fx shader)    
			   
			  Overbright glow effect | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_corona (.fx shader)    
			   
			  Animated noisy glow effects around each object,
	"Corona" is an animated extension of "post_halo" and "post_glowTrail"
	with the simple addition of noise. Objects are rendered into a
	texture, that texture swizzled and blurred, noise used to repeatedly
	offset the texels, and over several frames each new frame is tinted,
	faded, and moved by noise to a new location for a fire-like effect
	around the edges of each object. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_blendOverlay (.fx shader)    
			   
			  Draw an overlay image over the current scene,
		using a variety of
    		pixel-shader-driven blend modes. Compile-time
		options provide dissolve and Photoshop(tm)-style
		"Advanced Blend" operations | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_dropShadow (.fx shader)    
			   
			  Add 2D dropshadow | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_innerGlow (.fx shader)    
			   
			  Draw a colored glow along the INSIDE edges
    		of the scene objects (based on alpha) | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_glow (.fx shader)    
			   
			  Glow overlay to scene | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_glowTrail (.fx shader)    
			   
			  Psychotronic glow trails over animated scenes.
    	The post_glowtrail shader uses persistent render-to-texture
	for animated effect. Each frame is rendered to a texture, and its
	alpha is blurred and swizzled into RGB, tinted, and saved from
	frame-to-frame. Each frame, the previous blur is faded slightly
	before being added to the new glow. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_glowTrailFP (.fx shader)    
			   
			  Psychotronic glow trails over animated scenes.
    	The post_glowtrail shader uses persistent render-to-texture
	for animated effect. Each frame is rendered to a texture, and its
	alpha is blurred and swizzled into RGB, tinted, and saved from
	frame-to-frame. Each frame, the previous blur is faded slightly
	before being added to the new glow. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			  Video 
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_trail (.fx shader)    
			   
			  Leave persistent but fading images behind
    	as the scene moves. Looks best with "Draw Always"
	active.
    	The uses persistent render-to-texture
	for animated effect. Each frame is rendered to a texture, 
	blurred and saved from
	frame-to-frame. Each frame, the previous blur is faded slightly
	before being added to the new scene. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_halo (.fx shader)    
			   
			  Halos around any object -- these halos are
	based on the object's alpha channel, which is blurred and
	swizzled into RGB space via render-to-texture. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_star (.fx shader)    
			   
			  Create a star-shaped flare. This shader
    	uses two passes, like the separable "glow" shader, but
	the passes are completely independant, creating a crossed-star
	shape. Only pixels brighter than "Starmin"
	will flare. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_kuwahara (.fx shader)    
			   
			  Kuwahara "blur" filter  selectively
	preserve some egde detail and color | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_orb (.fx shader)    
			   
			  Draws a "lens" effect over the curent frame, based
    	on the current mouse location (drag over the render window). The
	"lens" displacement is ased on a pre-calculated texture, so this
	provides a handy template for displacement shaders. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_edgeDetect (.fx shader)    
			   
			  Edge detection applied to scene | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_edgeDetect2 (.fx shader)    
			   
			  Edge detection applied to scene -- faster version
    	with some terms skipped because they were zero or one | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_edgeDetectColor (.fx shader)    
			   
			  Fasster Edge Detect in RGBA (instead of grayscale) | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_cameraShake (.fx shader)    
			   
			  Use vertex noise for postprocess camera shake | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_dizzy (.fx shader)    
			   
			  Make the viewer dizzy | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_dizzier (.fx shader)    
			   
			  Make the viewer dizzier | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_colorMatrix (.fx shader)    
			   
			  Process scene colors for Saturation, contrast, etc | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_colorMix (.fx shader)    
			   
			  Like the Photoshop(tm) color mixer | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_colorGradient (.fx shader)    
			   
			  Apply a color curve texture to the vlaues in the
    	R,G, B or grayscale values in the scene. Note that setting
	grayscale conversion weights of (1,0,0) gives the same result
	as just using "red" though at lower performance. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_monoMix (.fx shader)    
			   
			  Like the Photoshop(ps) color mixer when set to
    	"monochrome"  interactively create the final
	color mix for the B&W result. Unlike Photoshop(tm), consider
	alpha contribution too. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   colorSpin (.fx shader)    
			   
			  ColorSpin ignores scene geometry, but rotates
	the color coordinates of the input texture image according
	to the HLSL World-View matrix | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_desaturate (.fx shader)    
			   
			  Desaturate scene colors | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_sepia (.fx shader)    
			   
			  Add sepia toning (or any color toning) | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_colorCurve (.fx shader)    
			   
			  Apply a color curve, much like the Photoshop(tm)
    	"curves" filter. Curves are stored as textures, which can
	be defined via HLSL or from a disk file. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_frost (.fx shader)    
			   
			  Edgy frost effect on image | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_frostFast (.fx shader)    
			   
			  Edgy frost effect on image -- cheaper version | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_halftone_n (.fx shader)    
			   
			  B&W white noisy halftoning as a postprocess | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_halftone_r (.fx shader)    
			   
			  Simple round-dor pure B&W imaging | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_posterize (.fx shader)    
			   
			  Reduce color palette | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_wipe (.fx shader)    
			   
			  Simple wipe between two images  default
    	valuess set up a quot;Star Wars Special" | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_unsharpMask (.fx shader)    
			   
			  Aply unsharp mask to scene | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_tiles (.fx shader)    
			   
			  Reduce image to a mosaic of stylized 3D tiles | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_moscowTV (.fx shader)    
			   
			  The "TV" post-processing effect 
	draws any scene through an animated "old TV"
	screen effect, driven by the scene clock. The elements of this TV
	effect include contrast and color changes, a flickering "overbrite"
	effect, and scrolling "scan lines" based on a sine
	function. | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_negative (.fx shader)    
			   
			  Invert image | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_passThru (.fx shader)    
			   
			  Just pass image through another texture (useful for
    	capturing that texture to disk in FX Composer) | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_512x512 (.fx shader)    
			   
			  Copy scene to a fixed-size map | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_texture (.fx shader)    
			   
			  Apply texture as background | 
			    | 
			    | 
			    | 
			
			
			  Background
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_cubeBg (.fx shader)    
			   
			  pre_cubeBg uses a cube environment map as the background,
	adjusting appropriately for the camera's view direction | 
			    | 
			    | 
			    | 
			
			
			  Environment
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_gradient (.fx shader)    
			   
			  Draw gradient as background | 
			    | 
			    | 
			    | 
			
			
			  Background
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_gradientTexture (.fx shader)    
			   
			  create gradient texture for use as background | 
			    | 
			    | 
			    | 
			
			
			  Background
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_invDisplace (.fx shader)    
			   
			  Use object surface normals to displace an image | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Scene_radialBlur (.fx shader)    
			   
			  Scene_radialBlur uses a accumulation-style motion
    	blur effect | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_showAlpha (.fx shader)    
			   
			  Show the scene alpha channel | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_Mandelbrot (.fx shader)    
			   
			  Mandelbrot Set in a ps_2 pixel shader | 
			    | 
			    | 
			    | 
			
			
			  Fractal
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_blendModes (.fx shader)    
			   
			  Blend modes | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_bias (.fx shader)    
			   
			  Show effects of texture bias | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_clear (.fx shader)    
			   
			  Clear to any color | 
			    | 
			    | 
			    | 
			
			
			  Background
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_displaceMap (.fx shader)    
			   
			  Apply a displacement texture to the scene | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_hsv2rgb (.fx shader)    
			   
			  Conversion of HSV data to RGB | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_EasyBake (.fx shader)    
			   
			  Bake lighting from one object into a texture,
    	then apply that texture to instances of that object, rather
	than lighting them. | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_texture (.fx shader)    
			   
			  Show a texture | 
			    | 
			    | 
			    | 
			
			
			  Background
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_textureclear (.fx shader)    
			   
			  Clear to a texture | 
			    | 
			    | 
			    | 
			
			
			  Background
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   screentest (.fx shader)    
			   
			  Early image processing demo | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   bicubic (.fx shader)    
			   
			  Bicubic filtering example | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Graph1DTextures (.fx shader)    
			   
			  Graph1DTextures uses an image shader to graph
    	RGBA values from any 1-D texture onto the scene frame | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   check3DX (.fx shader)    
			   
			  Fast texture-engine version of anti-aliased 3D
	checkering. See check3D.fx for a numerical equivalent with lower
	performance. HLSL texture shader functions are used to generate
	special samplers for high performance | 
			    | 
			    | 
			    | 
			
			
			  ProceduralAA
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   check3d (.fx shader)    
			   
			  A 3D checkboard surface. The checker is calculated
	analytically using ddx() and ddy() functions. For a faster
	texture-engine version, see check3DX.fx | 
			    | 
			    | 
			    | 
			
			
			  ProceduralAA
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   brix (.fx shader)    
			   
			  Anti-aliased Brick Shader #151; uses the texturing
    	ngine for high performance | 
			    | 
			    | 
			    | 
			
			
			  ProceduralAA
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   cage (.fx shader)    
			   
			  "Cage" creates the illusion of an
	anti-aliased wire-mesh cage. A 3D periodic function is used, and
	accelerated by use of the texturing engine and a pattern texture
	generated by HLSL at run time | 
			    | 
			    | 
			    | 
			
			
			  ProceduralAA
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   SeeValues (.fx shader)    
			   
			  Display a variety of different scene-data values
	such as surface normals, halfAngles, etc as colors  useful for
	debugging shaders and models (Note the use of cube_normalize()) for
	some colors, too). Compare to the pattern-based display of
	"SeeValues.fx" | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   seespaces (.fx shader)    
			   
			  Display 2D/3D checkerboard patterns to illustrate
	different spaces (coordinate systems) used in shading.
	Can be applied to any model. Use the "scale" control to alter the
	size of the displayed pattern, and compare to the use of color for
	debugging display, as found in "SeeValues.fx" | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   deepColor (.fx shader)    
			   
			  Return scene depth as a grayscale | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   showUV (.fx shader)    
			   
			  SHow surface UV coordinates | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   rasterize (.fx shader)    
			   
			  D rasterization in pixel shader | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   CookTorranceMulti (.fx shader)    
			   
			  CookTorranceMulti uses texturing to perform
    	shading via multitexturing. Two textures are indexed against
	dot-product lighting factors, then their results multiplied. The
	two textures combine as factors to create the final complex BRDF.
	In the example textures, a Cook-Torrance model is emulated -- other
	isotropic BRDFs are just as easily created (or invented in Photoshop).
	Note that the factors are actually calculated in the vertex shader,
	so this method will function even under DirectX 8. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Nightfall (.fx shader)    
			   
			  Nightfall -- uses two textures to show different
    	lighting effects for night and day. One texture shows the earth at
	night, the other shows it illuminated by daylight -- the lighting
	equation modulates between the two | 
			    | 
			    | 
			    | 
			
			
			  Materials
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   fur (.fx shader)    
			   
			  Concentric-shells technique simple fur | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scruffy (.fx shader)    
			   
			  scruffy is fur with random 
	"scruffiness" | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Aniso2003 (.fx shader)    
			   
			  Anisotropic specular calculated through a BRDF texture. The texture can be calculated on the fly by the HLSL Virtual machine | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   ThinFilm2 (.fx shader)    
			   
			  Dsplay a surface colored as if it has been
    	coated with a thum, refractive and transparent film | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   CookTorranceMultiD (.fx shader)    
			   
			  Use of two prefactored textures to calculate a complex BRDF -- Directional-light version | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   CookTorranceMultiTexFresnel (.fx shader)    
			   
			  Use of two prefactored textures to calculate a complex BRDF, Version with Reflections | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   blobCT (.fx shader)    
			   
			  Vertex animation combined with Mutlitextured BRDF | 
			    | 
			    | 
			    | 
			
			
			  VertexAnim
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   durer (.fx shader)    
			   
			  A shader to display objects with an "hatched" look in two colors, inspired by colored-paper drawings by Albrecht Durer. Like Durer's drawings, the diffuse tone is drawn with a dark hatch on a midtone, and then the hilight tones are hatched in a bright tone at a different angle on top of the darker tones. | 
			    | 
			    | 
			    | 
			
			
			  ProceduralAA
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   goochy (.fx shader)    
			   
			  Provides a vertex-shaded version of "Goch"
    	shading  expecially useful for workstation and other modelling
	applications. Instead of normal lighting, cool and warm tones are
	interpolated across the entire surface  not just lit areas 
	to give a good impresion of depth and solidity. See goochy2.fx
	for a version with a vertex-shaded hilight, and goochy_HLSL.fx for
	a pixel_shaded version using HLSL and PS_2. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   goochy2 (.fx shader)    
			   
			  Gooch shading with glossy hilight | 
			    | 
			    | 
			    | 
			
			
			  NPR
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   goochy2D (.fx shader)    
			   
			  Gooch shading with glossy hilight, lit by a directional source | 
			    | 
			    | 
			    | 
			
			
			  NPR
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   goochy_HLSL (.fx shader)    
			   
			  goochy_HLSL provides a PS2 pixel shader
    	version of gooch shading, along with a "superglossy" highlight --
	the highlight has a threshhold below "GloosTop" where it drops steeply
	to give a large wet-looking disk | 
			    | 
			    | 
			    | 
			
			
			  NPR
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Ocean (.fx shader)    
			   
			  Ocean shader -- looks best on a flat plane | 
			    | 
			    | 
			    | 
			
			
			  Materials
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   SpinBlur (.fx shader)    
			   
			  spinFX shows accumulation-buffer motion blur.
	By default a SINGLE motion-blurred frame is drawn.
	Uncomment the USE_TIMER macro and recompile to enable animation. 
	Accumulation buffer effects are created by rendering the same object
	repeatedly, and accumulating the resultant pixels into a deep
	(FP16) "accumulation buffer." This is therefore a render-to-texture
	effect. For each subsequent re-rendering, the objects and/or camera
	are moved or changed slightly. Once the accumulation passes are
	complete, the resultant floating-point pixels are re-averaged into
	a viewable and nicely-blurred picture. Controls in the shader
	determine the balance between render speed (a small number of samples)
	and blur quality (a large number of samples). | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   vnoise (.fx shader)    
			   
			  Vertex noise animation | 
			    | 
			    | 
			    | 
			
			
			  Noise
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Flame (.fx shader)    
			   
			  An animated flame effect, using noise, lookup
    		colors, and multiple transparent planes | 
			    | 
			    | 
			    | 
			
			
			  Materials
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   moscow_lava (.fx shader)    
			   
			  Animated lava, created by combined animating
		textures... including tree bark! | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   MrTwister (.fx shader)    
			   
			  MrTwister is a simple cycling vertex-animation
    		distortion demo | 
			    | 
			    | 
			    | 
			
			
			  VertexAnim
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   clock (.fx shader)    
			   
			  Simple shader that samples different parts of a
	    texture to look-up different digits. Combined with the TIME
	    semantic, this creates a simple GPU-based clock
	    display | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   MrWiggle (.fx shader)    
			   
			  Simple sinusoidal vertex animation | 
			    | 
			    | 
			    | 
			
			
			  VertexAnim
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Scaredy (.fx shader)    
			   
			  Vertices will avoid the mouse... or chase
    		it, if the left button is pressed | 
			    | 
			    | 
			    | 
			
			
			  VertexAnim
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   selfAlign (.fx shader)    
			   
			  Align sprites to the view direction, using
    	a vertex shader  no load to CPU | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   cardProxy (.fx shader)    
			   
			  cardProxy | 
			    | 
			    | 
			    | 
			
			
			  Environment
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   msHemisphere (.fx shader)    
			   
			  Hemispheric lighting demo from Microsoft | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   msglow (.fx shader)    
			   
			  Glow shader from Microsoft | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   msmetallicflakes (.fx shader)    
			   
			  Metallic Flake (carpaint) shader from Microsoft | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   mswood (.fx shader)    
			   
			  Wood shader from Microsoft | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   DawnCostume (.fx shader)    
			   
			  Filmy Dawn Bustier Material | 
			    | 
			    | 
			    | 
			
			
			  Materials
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   Gungrip (.fx shader)    
			   
			  Gungrip material is a reflective metal with a 
    	thin plastic coating. Two lights are used. | 
			    | 
			    | 
			    | 
			
			
			  Materials
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   HammerTime (.fx shader)    
			   
			  HammerTime is a simple textured shader
	with glow | 
			    | 
			    | 
			    | 
			
			
			  Materials
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   glass (.fx shader)    
			   
			  Glassy surface | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   plasticD (.fx shader)    
			   
			  Plastic, lit by a directional source | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   plasticQ (.fx shader)    
			   
			  plastic with a quadratic-falloff point lamp | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   lambSkin (.fx shader)    
			   
			  lambSkin -- a skin shader (based on a tweaked
    		lambert function) that provides a simple simulation
		of subsurface scattering. An extra "sub" color is
		added to the diffuse shading, and that color will "bleed
		through" to the back of the model depending on the setting
		of the "wrap" rolloff paramter. Because this is part
		of the diffuse shading,it tends to be low-frequency, so
		versions are provided for both pixel-shaded and vertex-shaded
		surfaces  both textured or untextured. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   plasticRim (.fx shader)    
			   
			  Plastic with a special rim-lit effect 
    	the highlight exponenet changes as the hilight is drawn near
	the contur edge | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   glossyHilight (.fx shader)    
			   
			  "Glossy Hilight" in this case means a crisp,
    		round-edged hilight -- the hilight rolls-over normally
		but when it hits the "top" value it will drop off
		rapidly until it reaches the "bot" value. The result looks
		like a highlight from a larger round source, rather than
		the usual point-light source. A specific function, vertex
		shaded, pixel shaded, textured and untextured samples
		are supplied. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   metal (.fx shader)    
			   
			  A collection of vertex-shaded, pixel-shaded,
	textured or untextured metal surfaces. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   metalD (.fx shader)    
			   
			  metal lit by a directional source | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   metalRefl (.fx shader)    
			   
			  metalRefl provides reflective metal shading
    		in ps_2 - lit by a point source | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   PureTexture (.fx shader)    
			   
			  Just use a texture  no lighting | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   parallaxBumpMap (.fx shader)    
			   
			  The newly-popular parallax or "offset"
    	bump-mapping technique creates an effective illusion of 
	displacement mapping. | 
			    | 
			    | 
			    | 
			
			
			  Bump
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   SimpleTexture (.fx shader)    
			   
			  Simple textured surface | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   SimpleDiffuseHLSL (.fx shader)    
			   
			  SimpleDiffuseHLSL is a very simple template shader | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   SimpleVPHLSL (.fx shader)    
			   
			  Simple vertex-shaded surface | 
			    | 
			    | 
			    | 
			
			
			  Basic
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   SimpleTexPs (.fx shader)    
			   
			  SimpleTexPs Simple textured template | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   BumpGlossed (.fx shader)    
			   
			  A complex Bumpy Glossy surface with multiple textures and multiple lights | 
			    | 
			    | 
			    | 
			
			
			  Bump
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   BumpGlossedShiny (.fx shader)    
			   
			  A complex Bumpy Glossy surface with multiple textures and multiple lights | 
			    | 
			    | 
			    | 
			
			
			  Bump
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   BumpPlastic (.fx shader)    
			   
			  Bumpmapped Plastic | 
			    | 
			    | 
			    | 
			
			
			  Bump
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   BumpReflectHLSL (.fx shader)    
			   
			  A new HLSL version of "bumpy shiny" | 
			    | 
			    | 
			    | 
			
			
			  Bump
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   PlasticDX9 (.fx shader)    
			   
			  PlasticDX9 s a typical plastic shader with
    	options for texturing and fresnel-attenuated reflections. Vertex
	shaded (no pixel shader) and pixel-shaded versions are supplied | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   PlasticDX9multipass (.fx shader)    
			   
			  PlasticDX9multipass shows a reflective plastic
    	surface illumiated by multip0le light sources. Each source
	in accumulated in a separate pass. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   simplerFiniteReflection (.fx shader)    
			   
			  Reflective metal  the reflection is set to have
    	a specific radisu and location, rather than an infinite distance. This
	permits a number of interactive motion effects (see GPU Gems) | 
			    | 
			    | 
			    | 
			
			
			  Environment
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   velvety (.fx shader)    
			   
			  Velvet catches light around its edges, thanks to
    	lots of trnslucent fuzz. This surface (vertex-shaded or 
	pixel-shaded) simulates this effect inexpensively. Textured
	and untextured versions are both suplied. | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   wood (.fx shader)    
			   
			  Classic Renderman-style "wood" shader, uses textures fr faster lookup than color spline() functions | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   PerfTutor (.fx shader)    
			   
			  PerfTutor is a simple template for trying
    		different effects and seeing their results on the overall
		shader perfomance. Multiple lights are used. | 
			    | 
			    | 
			    | 
			
			
			  Debug
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   DiffNoise (.fx shader)    
			   
			  Show 3D noise texturing in a simple direct form | 
			    | 
			    | 
			    | 
			
			
			  NPR
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   DiffTex (.fx shader)    
			   
			  Diffuse shader with texture. Controls permit scaling, rotation, etc of texture in the shader | 
			    | 
			    | 
			    | 
			
			
			  Texture
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   DiffuseBumpHLSL (.fx shader)    
			   
			  Diffuse Bumped Surface in HLSL | 
			    | 
			    | 
			    | 
			
			
			  Bump
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   EnvPassThrough (.fx shader)    
			   
			  Pass through the surface to a background cube map  direction
	    is traced from eye position. | 
			    | 
			    | 
			    | 
			
			
			  NPR
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   stencilVolume (.fx shader)    
			   
			  Volume shadowing | 
			    | 
			    | 
			    | 
			
			
			  Shadow
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   volume (.fx shader)    
			   
			  This example performs volume rendering in a single pass using ray marching.
    The code calculates the intersection between the eye ray and an axis-aligned box using the slabs method.
    It then marches along the ray between the two intersection points, looking up in a 3D texture at each
    sample point, and accumulating color and opacity as it goes. If using pixel shader 3.0, this will compile to a real REP/ENDREP loop.
     | 
			    | 
			    | 
			    | 
			
			
			  BRDF
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   softStencilShadow (.fx shader)    
			   
			  softStencilShadow | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   gooch_slicer (.fx shader)    
			   
			  gooch_slicer | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   goochy_shadow (.fx shader)    
			   
			  goochy_shadow | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_1024x1024 (.fx shader)    
			   
			  post_1024x1024 | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_colorClip (.fx shader)    
			   
			  post_colorClip | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_bleach_bypass (.fx shader)    
			   
			  post_bleach_bypass | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_drainBamage (.fx shader)    
			   
			  post_drainBamage | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_distort (.fx shader)    
			   
			  post_distort | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_fromCMYK (.fx shader)    
			   
			  post_fromCMYK | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_fromCMY (.fx shader)    
			   
			  post_fromCMY | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_fromYUV (.fx shader)    
			   
			  post_fromYUV | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_fromHSV (.fx shader)    
			   
			  post_fromHSV | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_image_diffusion (.fx shader)    
			   
			  post_image_diffusion | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_holga (.fx shader)    
			   
			  post_holga | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_sepiaX (.fx shader)    
			   
			  post_sepiaX | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_scratch (.fx shader)    
			   
			  post_scratch | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_titleOverlay (.fx shader)    
			   
			  post_titleOverlay | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_swizzle (.fx shader)    
			   
			  post_swizzle | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_toCMYK (.fx shader)    
			   
			  post_toCMYK | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_toCMY (.fx shader)    
			   
			  post_toCMY | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_toYUV (.fx shader)    
			   
			  post_toYUV | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   post_toHSV (.fx shader)    
			   
			  post_toHSV | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_noise (.fx shader)    
			   
			  pre_noise | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_opto (.fx shader)    
			   
			  pre_opto | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_noise3d (.fx shader)    
			   
			  pre_noise3d | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   scene_lineDraw (.fx shader)    
			   
			  scene_lineDraw | 
			    | 
			    | 
			    | 
			
			
			  Image Postprocessing 
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   pre_psych (.fx shader)    
			   
			  pre_psych | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			   
			   
			  Download  | 
			
			
			   | 
			
			
			   
			   | 
			
			
			   softStencilShadow (.fx shader)    
			   
			  softStencilShadow | 
			    | 
			    | 
			    | 
			
			
			  
 
 
  
			  
			   
			   
			  Whitepaper 
			   
			  Download  | 
			
			
			   |