SLI Zone
NVIDIA.com Developer Home

SDK 9.52 Code Samples - Videos

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)

Select the category to view:

Antialiasing with TransparencyFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample demonstrates the GeForce 7 Series per-primitive super-sample and multi-sample modes for antialiasing primitives with transparent fragments. The problem with using alphatest to virtually simulate geometry is a hard edge that is produced where the test occurs. The conventional solution for dealing with this problem is to use alpha blending. Using a GeForce 7 Series GPU, you can enable super-sampling or multi-sampling per-primitive, yielding much higher image quality along the alpha tested edges.
  Minimum Required GPU

Graphics API Type



Whitepaper  
Video  
Download


Dynamic Ambient OcclusionFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample demonstrates a new technique for computing diffuse light transfer and shows how it can be used to compute global illumination for animated scenes. The technique efficiently calculates ambient occlusion and indirect lighting data on the fly for each rendered frame. It does not have the limitations of precomputed radiance transfer (PRT) or precomputed ambient occlusion techniques, which are limited to rigid objects that do not move relative to one another. It works by treating polygon meshes as a set of surface elements that can emit, transmit, or reflect light and that can shadow each other. This method is efficient because it works without calculating the visibility of one element to another. Instead, it uses a much simpler and faster technique that uses shadowing to account for occluding (blocking) geometry.
  Minimum Required GPU

Graphics API Type



Whitepaper  
Video  
Download


Antialiasing with Post-ProcessingFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

In this sample, an antialiased backbuffer is read as the source image for a post-processing effect which creates a green glow. The IDirect3DDevice9::StretchRect() function is used to copy the antialiased image to a render-target texture for post-processing. This technique yields better results than simply rendering the scene to an off screen render target.
  Minimum Required GPU

Graphics API Type



Whitepaper  
Video  
Download


Video FilterFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample demonstrates how apply shader effects onto two videos and composite them together using pixel shaders. Shaders are then used to perform YUV2RGB color conversion, color correction, and effects like sepia, blur, sharpen, luminance edge detection, fade, and radial blur.
  Minimum Required GPU

Graphics API Type



Whitepaper  
Video  
Download


GPU ClothFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample demonstrates how to use Shader Model 3.0 to simulate and render cloth on the GPU. The cloth vertex positions are computed through several pixel shaders and saved into a texture. A vertex shader then reads these positions using Vertex Texture Fetch (VTF) to render the cloth.
  Minimum Required GPU

Graphics API Type


User Guide  
Whitepaper  
Video  
Download


InstancingFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample uses Microsoft's Direct3D9 Instancing Group to render thousands of meshes on the screen with only a handful of draw calls. This significantly reduces the CPU overhead of submitting many separate draw calls and is a great technique for rendering trees, rocks, grass, RTS units and other groups of similar (but necessarily identical) objects.
  Minimum Required GPU

Graphics API Type



Whitepaper  
Video  
Download


High Dynamic Range RenderingFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This example demonstrates how to implement simple high-dynamic range rendering in OpenGL on both GeForce FX and GeForce 6 series GPUs. It loads environment map images in the Radiance ".hdr" format and uses these to light simple 3D objects. On GeForce FX series GPUs it uses two "HILO" format cubemaps (16-bit integer). On GeForce 6 series GPUs it uses 16-bit floating point cube maps with texture filtering. The example also implements a glow post-processing effect using a separarable Gaussian blur.
  Minimum Required GPU

Graphics API Type




Video  
Download


Simple NV_fragment_program2For a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This simple example demonstrates the use of the NV_fragment_program2 extension, including looping and branching in fragment programs, and fast normalization of fp16 vectors using the "NRM" instruction. The example uses this functionality to implement multiple per-pixel lights in a single pass. NV_fragment_program2 is only available on GeForce 6 series GPUs.
  Minimum Required GPU

Graphics API Type




Video  
Download


PBO Texture PerformanceFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

Explores various ways to use OpenGL pixel buffer objects (PBOs). This code sample can also be used to see the maximum bus-transfer rates for textures to and from the GPU.
  Minimum Required GPU

Graphics API Type


User Guide  

Video  
Download


HDR Deferred ShadingFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample shows high dynamic range (HDR) lighting combined with deferred shading. Deferred shading is a technique where the components of the lighting equation (surface attributes like the normal, position, albedo, etc.) are rendered into multiple screensized render targets (MRTs). Lighting is then done using geometrically simple passes over these MRT buffers, fetching the components of the lighting equation and outputting lighting results. This results in less shaded depth complexity, less geometry processing, better batching, and a cleaner rendering pipeline. The high dynamic range comes from the lighting passes being accumulated using fp16 blending into a floating point render target, after which tone mapping and a bloom effect are done using fp16 filtering to get the HDR results into the displayable 0..1 range.
  Minimum Required GPU

Graphics API Type


User Guide  

Video  
Download


Simple Vertex TextureFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This simple example demonstrates the use of the NV_vertex_program3 extension to perform texture look-ups in a vertex program. It uses this feature to perform simple displacement mapping. The example also shows how to implement bilinear filtering of vertex texture fetches.
  Minimum Required GPU

Graphics API Type




Video  
Download


Soft ShadowsFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample shows how to use conditional branching to compute filtered soft shadows efficiently. This technique could also be applied to accelerate other filtering algorithms to increase performance significantly on GPUs that support Shader Model 3.0.
  Minimum Required GPU

Graphics API Type


User Guide  
Whitepaper  
Video  
Download


Simple Soft ShadowsFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample demonstrates how branching in fragment programs can be used to optimize soft shadow rendering in OpenGL. This technique could also be applied to accelerate other filtering algorithms to increase performance significantly on GPUs that support Shader Model 3.0.
  Minimum Required GPU

Graphics API Type



Whitepaper  
Video  
Download


16-bit Floating Point Blending and FilteringFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This simple example demonstrates 16-bit floating point blending and texture filtering. It repeatedly renders an OpenEXR-format image to a 16-bit floating point p-buffer with additive blending, and then uses a fragment program to display the results to the screen. The exposure multiplier value can be increased and decreased using the '+' and '-' keys.
  Minimum Required GPU

Graphics API Type




Video  
Download


Vertex Texture Fetch WaterFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This sample demonstrates a technique for simulating and rendering water. The water is simulated via Verlet integration of the 2D wave equation using a pixel shader. The simulation result is used by a vertex shader via vertex texture fetch (VTF). The water surface is rendered by combining screen-space refraction and reflection textures.
  Minimum Required GPU

Graphics API Type


User Guide  
Whitepaper  
Video  
Download


HDR PaintFor a direct link to this sample, right-click and copy the URL (shortcut) of this link icon.

This example demonstrates the use of floating point textures and render-to-texture to implement interactive high dynamic range painting. It uses fragment prorams to implement several different display and brush modes. The application is resolution-independent - all rendering is performed to an offscreen floating point pbuffer, which can then be displayed at any size or position. Each brush stroke is rendered as a single textured quad. Floating point blending is implemented in the shader using two pbuffers which are alternated between each brush stroke. One is used as the source buffer and the other is the destination. The modified area is copied back from the destination to the source for the next frame.
  Minimum Required GPU

Graphics API Type




Video  
Download

Last Update: Jan 17, 2007
NVPerfHUD 4