AMD Logo AMD Developer Central

Radeon™ SDK Samples & Documents
Skip Navigation LinksHome > GPU Tools > ATI Radeon™ SDK > Radeon™ SDK Samples & Documents

AMD ATI Samples and demos

Overview
Welcome to the one-step center for all your source-code needs for ATI GPUs.

» Utility
  • CrossFire Detect (September 2007)
» Direct3D 10 Samples
  • PostTonemapResolve (September 2007)
  • Global Illumination (June 2007)
  • GS-NPatch-Tessellation (June 2007)
  • Skin Animation (June 2007)
» Direct3D 9 Samples
  • R2VB-Animation (March 2006)
  • R2VB-OceanWater (March 2006)
  • R2VB-ParticleSystem (March 2006)
  • AlphaToCoverage (October 2005)
  • AFR-Friendly (October 2005)
  • ShadowMapFetch4 (October 2005)
  • ParallaxMapping (June 2005)
» OpenGL Samples
  • AlphaToCoverage (October 2005)
  • FramebufferObject (October 2005)
  • ParallaxMapping (June 2005)
» Documentation
  • Advanced DX9 Capabilities for ATI Radeon Cards - whitepaper (July 2009)
  • ATI Radeon HD 2000 Programming Guide (June 2007)
  • Depth In-depth (June 2007)
  • R2VB Programming (March 2006)
  • Radeon X1x00 Programming Guide (March 2006)
  • ATI OpenGL Programming and Optimization Guide (October 2005)
  • Order Matters in Resource Creation (October 2005)
  • Harnessing the Performance of CrossFireX™ (August 2008)
  • Framebuffer Objects (October 2005)
  • Resolve your Resolves (August 2008)

Utility


CrossFire Detect (September 2007)
Illustrates: This sample shows how to use atimgpud.dll library to detect the number of installed GPUs.
*new 64 bit and static library support for CrossFire detection library.


Direct3D 10 Samples


PostTonemapResolve (September 2007)
Illustrates: This sample implements two methods of resolving a multisampled HDR render target; a traditional approach with resolve followed by tone-mapping, and the post-tonemap resolve where resolve follows the tonemap.


Global Illumination (June 2007)
Illustrates: This sample implements a real-time GI solution by sampling the scene lighting into cubemaps at probe locations in a grid across the scene and converting the resulting lighting function into SH coefficients for indirect lighting. The geometry shader is used to accelerate the process by rendering to 30 cubemap faces in a single pass.


GS-NPatch-Tessellation (June 2007)
Illustrates: This sample shows how to smoothen a low-polygon mesh by n-patch tessellating the input triangles in the geometry shader.


Skin Animation (June 2007)
Illustrates: This sample implements a technique for computing skinning animation on the GPU and rendering a massive number of animated models with instancing.


Direct3D 9 Samples

R2VB-Animation (March 2006)
Illustrates: A fast way to do tens of thousands of animations using a render to vertex buffer technique.


R2VB-OceanWater (March 2006)
Illustrates: This sample demonstrates using render to vertex buffer with GPU generated ocean waves.


R2VB-ParticleSystem (March 2006)
Illustrates: This is a sample particle system running entirely on the GPU using render to vertex buffer.


AlphaToCoverage (October 2005)
Illustrates: This sample showcases a technique for antialiasing those alpha-tested edges!


AFR Friendly AFR-Friendly (October 2005)
Illustrates: This sample demonstrates how to get the most out of CrossFire(tm) by making an application AFR friendly.


ShadowMapFetch4 (October 2005)
Illustrates: This sample demonstrates hardware shadow mapping on ATI hardware with support for Fetch4 depth texture sampling. Note that percentage-closer-filtering (PCF) is implemented in the shader with fewer taps.


ParallaxMapping (June 2005)
Illustrates: This sample shows how to create a more bumpy looking surface than regular normal mapping by using various Parallax mapping techniques.

OpenGL Samples


AlphaToCoverage (October 2005)
Illustrates: This sample showcases a technique for antialiasing those alpha-tested edges!


FramebufferObject (October 2005)
Illustrates: This sample application illustrates the use of the GL_EXT_framebuffer_object extension.


ParallaxMapping (June 2005)
Illustrates: This sample shows how to create a more bumpy looking surface than regular normal mapping by using various Parallax mapping techniques.

Documentation


Advanced DX9 Capabilities for ATI Radeon Cards - whitepaper (July 2009)
Illustrates: This white paper gives implementation details on some of the advanced capabilities exposed by Radeon graphic drivers under the DirectX 9 API. Those capabilities target a feature level not directly exposed by DirectX 9, and therefore require an additional programming interface to take advantage of them.



ATI Radeon HD 2000 Programming Guide (June 2007)
Illustrates: This paper discusses general optimization hints and best practices for programming the latest ATI Radeon HD 2000 series hardware. It covers topics such as shaders, texturing, z optimizations, D3D10 optimizations etc.



Depth In-depth (June 2007)
Illustrates: This paper goes through the Z optimizations in current and earlier hardware. It explains the technical details behind techniques such as Hierarchical-Z and Early-Z and discusses the how to best utilizing these hardware optimizations.



R2VB Programming (March 2006)
Illustrates: This technology paper describes how to use the Render to Vertex Buffer technique to accelerate animation.



Radeon X1x00 Programming Guide (March 2006)
Illustrates: Radeon X1x00 Programming Guide



ATI OpenGL Programming and Optimization Guide (October 2005)
Illustrates: This guide focuses on how to get the most out of ATI graphics hardware under OpenGL.



Order Matters in Resource Creation (October 2005)
Illustrates: Trying to manage all those buffers and surfaces can be daunting. This paper aims to provide a bit of insight and help you order your resource allocations for maximum efficiency.



Harnessing the Performance of CrossFireX™ (August 2008)
Illustrates: This white paper describes the most common causes of poor CrossFireX™ performance scaling, and presents the recommended solutions. Engineers should take-away a clear understanding of how to develop and test on CrossFireX™ systems.



Framebuffer Objects (October 2005)
Illustrates: PBuffers served as the render-to-texture method for many years, but carried with them certain limitations. Framebuffer objects provide a more flexible, faster way to render to offscreen surfaces and don't carry with them all the baggage of pbuffers. This paper shows exactly how to make effective use of FBOs in great detail!



Resolve your Resolves (August 2008)
Illustrates: This white paper discusses the performance and quality implications of using MSAA Resolves in the rendering pipeline. Many MSAA Resolves are either redundant or harmful to image quality, and this paper highlights the common pitfalls and presents the recommend course of action to get it right.